资源描述:
《2011年计算机等级二级c语言章节习题及答案(9)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、2011年计算机等级二级C语言章节习题及答案(9)第10章 指针同步练习一一、选择题(在下列各题的A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项填涂在答题卡相应位置上。)10.1 若有下面的程序段:char s[]="china";char *p; p=s;则下列叙述正确的是A)s和p完全相同落千丈 B)数组s中的内容和指针变量p中的内容相等C)s数组长度和p所指向的字符串长度相等 D)*p与s[0]相等考生答案: 正确答案: D10.2 若有语句int *point,a=4;和 point=&a;下面均代表地址的
2、一组选项是A)a,point,*&a B)&*a,&a,*point C)*&point,*point,&a D)&a,&*point,point考生答案: 正确答案: D10.3 下列程序执行后的输出结果是void func(int *a,int b[]){ b[0]=*a+6; }main(){ int a,b[5];a=0; b[0]=3;func(&a,b); printf("%d\n",b[0]);}A)6 B)7 C)8 D)9考生答案: 正确答案: A10.4 已定义以下函数 fun(char *p2, char *p1)
3、{ while((*p2=*p1)!=’\0’){p1++;p2++;}} 函数的功能是 A)将p1所指字符串复制到p2所指内存空间 B)将p1所指字符串的地址赋给指针p2 C)对p1和p2两个指针所指字符串进行比较 D)检查p1和p2两个指针所指字符串中是否有’\0’考生答案: 正确答案: A10.5 有以下程序void ss(char *s,char t){ while(*s){ if(*s= =t)*s=t-’a’+’A’;s++;}}main(){ char str1[100]="abcddfefdbd",c=’d’;ss(st
4、r1,c); printf("%s\n",str1);}程序运行后的输出结果是A)ABCDDEFEDBD B)abcDDfefDbD C)abcAAfefAbA D)Abcddfefdbd考生答案: 正确答案: B10.6 下面说明不正确的是A)char a[10]="china"; B)char a[10],*p=a;p="china"C)char *a;a="china"; D)char a[10],*p;p=a="china"考生答案: 正确答案: D10.7 设有定义:int n=0,*p=&n,**q=&p,则下列选项中正确的
5、赋值语句是A)p=1; B)*q=2; C)q=p; D)*p=5;考生答案: 正确答案: D10.8 执行以下程序后,a,b的值分别为main(){ int a,b,k=4,m=6,*p1=&k,*p2=&m;a=p1==&m;b=(*p1)/(*p2)+7;printf("a=%d\n",a);printf("b=%d\n",b); }A)-1,5 B)1,6 C)0,7 D)4,10考生答案: 正确答案: C10.9 假定以下程序经编译和连接后生成可执行文件PROG.EXE,如果在此可执行文件所在目录的DOS提示符下键入:PROG
6、 ABCDEFGH IJKL<回车>,则输出结果为main( int argc, char *argv[]){ while(--argc>0)printf("%s",argv[argc]);printf("\n");}A)ABCDEFG B)IJHL C)ABCDEFGHIJKL D)IJKLABCDEFGH考生答案: 正确答案: D10.10 以下程序有错,错误原因是main(){ int *p,i;char *q,ch;p=&i;q=&ch;*p=40;*p=*q;......}A)p和q的类型不一致,不能执行*p=*q;语句B)*
7、p中存放的是地址值,因此不能执行*p=40;语句C)q没有指向具体的存储单元,所以*q没有实际意义D)q虽然指向了具体的存储单元,但该单元中没有确定的值,所以执行*p=*q;没有意义,可能会影响后面语句的执行结果考生答案: 正确答案: D10.11 下面程序段的运行结果是char a[]="lanuage",*p;p=a;while(*p!=′u′){printf("%c",*p-32);p++;}A)LANGUAGE B)language C)LAN D)langUAGE考生答案: 正确答案: C10.12 有以下语句,则对a数组元素
8、的引用不正确的是(0≤i≤9)int a[10]={0,1,2,3,4,5,6,7,8,9},*p=a;A)a[p-a] B)*(&a[i]) C)p[i] D)*(*(a+i))考生答案: 正确答案: D