若在C程序中有以下说明和语句,则下面表示的都是对数组元素的正确引用的是(其中0<=i<4, 0<=j<3)int main( ){int a[4][3]={0},(*ptr)[3],i,j;ptr=a;}
A. a[i][j], a[i]+j, *(*(a+i)+j)
B. *(ptr+i)[j], ptr[i]+j, *(*(ptr+i)+j)
C. *(ptr+i)[j], *(a+i)[j], *(ptr+i)
D. ptr[i][j], *(ptr[i]+j),*(a[i]+j)
查看答案
若有以下定义,则数组为4的表达式是_____。int a[3][4]={{0,1},{2,4},{5,8}},(*p)[4]=a;
A. *a[1]+1
B. p++,*(p+1)
C. a[2][2]
D. p[1][1]
下列程序的输出结果是_____。#include#includeint main(){ char *p2,s1[10]="bcd",str[50]="xyz";p2="ABCD";strcpy(str+2,strcat(s1+2,p2+1));printf("%s",str);return 0;}
A. xydBCD
B. abcABZ
C. Ababxy
D. xybcBCD
执行以下程序后,y的值是int main(){ int a[]={2,4,6,8,10};int y=1,x,*p;p=&a[1];for(x=0;x<3;x++)y+=*(p+x);printf("%d\n",y);return 0;}
A. 17
B. 18
C. 19
D. 20
设有如下定义:int arr[]={6,7,8,9,10};int *ptr;则下列程序的输出结果为______。ptr=arr;*(ptr+2)+=2;printf("%d,%d\n",*ptr,*(ptr+2));
A. 8,10
B. 6,8
C. 7,9
D. 6,10