C语言指针章节选择题.docVIP

  • 22
  • 0
  • 约2.65万字
  • 约 30页
  • 2017-08-26 发布于河南
  • 举报
有问题的题目: 40、46、54、55、122、123、 1. 若已定义: int a[]={0,1,2,3,4,5,6,7,8,9},*p=a,i; 其中0≤i≤9,则对a数组元素不正确的引用是 A) a[p-a] B) *(a[i]) C) p[i] D) a[10] D 2. 已知指针p的指向如下图所示,则执行语句*--p;后*p的值是 a[0] a[1] a[2] a[3] a[4] ┌──┬──┬──┬──┬──┐ │ 10 | 20 | 30 │ 40 | 50 | └──┴──┴──┴──┴──┘ p↑ A) 30 B) 20 C) 19 D) 29 B 3. 下面程序运行时,如果从键盘上输入3,5回车,程序输出的 结果是________。 main( ) { int a,b,*pa,*pb; pa=a; pb=b; scanf(%d,%d,pa,pb); *pa=a+b; *pb=a+b; printf(a=%d,b=%d\n,a,b); } A) a=13,b=13 B) a=8,b=8 C) a=8,b=13 D) 出错 C 4. 下面程序段的输出结果是________。 main( ) { char string1[20],string2[20]={ABCDEF}; strcpy(string1,string2); printf(%s\n,string1+3); } A) EF B) DEF C) CDEF D) ABCDEF B 5. 下列程序执行后的输出结果是________。 main() { int a[3][3],i,*pmul; pmul=a[0][0]; for(i=0;i9;i++) pmul[i]=i+1; printf(%d\n,a[1][2]); } A) 3 B) 6 C) 9 D) 随机数 B 6. 有如下程序段 int *p,a=10,b=1; p=a; a=*p+b; 执行该程序段后,a的值为________。 A) 12 B) 11 C) 10 D) 编译出错 B 7. 对于基类型相同的两个指针变量之间,不能进行的运算是 A) B) = C) + D) – C 8. 以下函数返回a所指数组中最小值所在的下标值 fun( int *a,int n) { int i,j=0,p; p=j; for(i=j;in;i++) if( *(a+i)*(a+p) )_______________; return (p); } 在下划线处应填入的是________。 A) i=p; B) a[p]=a[i]; C) p=j; D) p=i; D 9. 有以下函数 char *fun(char *p) { return p; } 该函数的返回值是________。 A) 无确切的值 B) 形参p中存放的地址值 C) 一个临时存储单元的值 D) 形参p自身的地址值 B 10. 有如下说明 int a[10]=[1,2,3,4,5,6,7,8,9,10},*p=a; 则数值为9的表达式是________。 A) *(p+9) B) *(p+8) C) *p+=9 D) p+8 B 11. 有如下程序 main() { char s[]=ABCD,*p; for(p=s+1;ps+4;p++) printf(%s\n,p); } 该程序的输出结果是________。 A) ABCD B) A BCD B CD C D D C) B D) BCD C CD D D D 12. 下列程序的输出结果是 main() { char a[10]={9,8,7,6,5,4,3,2,1,0},*p=a+5; printf(%

文档评论(0)

1亿VIP精品文档

相关文档