练习题-第七章指针(有答案).doc

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
练习题-第七章指针(有答案)

填空题: 下面程序段的运行结果是_____________。 char a[ ] = ”123456789”, *p; int i = 0 ; p = a; while(*p) { if(i % 2 = = 0) * p = ’*’; p++ ; i++; } puts(a ); 定义int a[ ]={1,2,3,4,5,6},*p=a;表达式( * ++p)++的值是____3_____。 在ANSI C中,一个指针变量占 2 个字节存储空间。 定义一个指向有5个元素的整型一维数组的指针变量p的语句是: int (*a)[5] 。 二、单项选择题: 以下程序中调用scanf函数给变量a输入数值的方法是错误的,其错误原因是( B )。 main( ) { int *p,*q ,a ,b; p = a; printf(“input a:”); scanf(“%d”,*p); … } A. *p表示的是指针变量p的地址。 B. *p表示的是变量a的值,而不是变量a的地址。 C. *p表示的是指针变量p的值。 D. *p只能用来说明p是一个指针变量。 已有定义 int k=2; int ptr1,ptr2;且ptr1和ptr2均已指向变量k,下面不能正确执行的赋值语句是( B ) A.k=*ptr1+*ptr2; B. ptr2=k; C.ptr1=ptr2; D. k=*ptr1*(*ptr2); 若有定义:int a[3][4];则对a数组的i行j列(假设i,j已正确说明并赋值) A. *(*(a+i)+j) B. (a+i)[j] C. *(a+i+j) D. *(a+i)+j 下面程序段的运行结果是( B  )。 char str[]=”ABC”,*p=str; printf(“%d\n”,*(p+3)); A.67 B.0 C.字符’C’的地址 D.字符’C’ 若有定义:int (*p)[4];则标识符p( C ) A.是一个指向整型变量的指针 B.是一个指针数组名 C.是一个指针,它指向一个含有四个整型元素的一维数组 D.定义不合法 若已有定义:char x[]=china;y[]={c,h,i,’n’,’a’};, 则以下叙述中正确的是? A)数组和的长度相同 B)数组长度小于数组长度 C)数组长度大于数组长度 D)上述说法都不对 A)k=*P1+*P2; B)p2=k; C)P1=P2; D)K=*P1 * (*P2); 执行以下程序段后,m的值为( A ) int a[2][3]={ {1,2,3},{4,5,6} }; int m,*p; p=a[0][0]; m=(*p)*(*(p+2))*(*(p+4)); A) 15 B) 14 C) 13 D) 12 有以下程序 main() { char a[]=programming, b[]=language; char *p1,*p2; int i; p1=a; p2=b; for(i=0;i7;i++) if(*(p1+i)==*(p2+i)) printf(%c,*(p1+i)); } 输出结果是( ) A) gm B) rg C) or D) ga 设有说明int s[2]={0,1},*p=s; 则下列错误的C语句是 ( ) A.s+=1; B.p+=1; C.*p++; D.(*p)++; 三、填程序: 下面程序的功能是将字符串b复制到字符串a。请填空。 #include “stdio.h” s(char *s, char *t) { int i=0; while( *t++!=’\0’ ) *s++=*t ; *s=’\0’ ; } main( ) { char a[20],b[10]; scanf(“%s”,b); s( a,b ); puts(a); } 用指针、指针变量作为实参、形参,实现两个数的互换,请填空。 void swap(int *p1,int *p2); main( ) { int a=10,

文档评论(0)

xy88118 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档