以下程序 int aa[3][3]={{2},{4},{6}}; main() { int i,*p=&aa[0][0]; for(i=0;i<2;i++){ if(i==0)aa[i][i+1]=*p+1; else ++p; printf("%d",*p); } } 的输出是______。
- A23
- B26
- C33
- D36
以下程序 int aa[3][3]={{2},{4},{6}}; main() { int i,*p=&aa[0][0]; for(i=0;i<2;i++){ if(i==0)aa[i][i+1]=*p+1; else ++p; printf("%d",*p); } } 的输出是______。
解析:观察题目,可以发现,*p=&aa[0][0]语句实际是将数组aa的首地址赋给了指针变量p,将i的值带入for循环中, i=0时,aa[0][1]=3,*p=2:*p输出的是指针所指向的数组值,此时p所指向的是aa[0][0],输出2,而i=1时执行了++p操作使指针向后移动指向了aa[0][1],所以在输出*p时应为3。
1、有下列程序main(){ int a[5]={2,4,6,8,10},*p,
有下列程序main(){ int a[5]={2,4,6,8,10},*p,**k; p=a; k=&p; printf("%d",*(p++)); printf("%d\n",**k);}运行该程序,其输出结果是A.4 B.22C.24 D.46A4 B22C24 D46
2、下面程序的输出结果是main{ int x=3 ,y=6,a=0; whil
下面程序的输出结果是main{ int x=3 ,y=6,a=0; while(x++!=(y-=1) ) { a+=1; if (y<x) break; } printf("x=%d,y=%d,a=%dn",x,y,a);}A.x=4,y=4,a=1 B.x=5,y=5,a=1 C.x=5,y=4,a=1 D.x=5,y=4,a=3Ax=4,y=4,a=1 Bx=5,y=5,a=1 Cx=5,y=4,a=1 Dx=5,y=4,a=3
3、有以下程序 main() { int a[3][3],*p,i; p=&am
有以下程序 main() { int a[3][3],*p,i; p=&a[0][0]; for(i=0;i<9;i++)p[i]=i+1; printf("%d ","a[1][2]); } 程序运行后的输出结果是A3B6C9D2
4、有以下程序 main() { int m[][3]={1,4,7,2,5,
有以下程序main(){int m[][3]={1,4,7,2,5,8,3,6,9};int i,j,k=2;for(i=0;i<3;i++){printf("%d",m[k][i]);}}执行后输出结果是()A456B258C369D789
5、有以下程序main() { int a[]={1,2,3,4,5,6,7,8
有以下程序main() { int a[]={1,2,3,4,5,6,7,8,9,0},*p; for(p=a;p<a+10;p++) printf("%d,",*p);}程序运行后的输出结果是A.1,2,3,4,5,6,7,8,9,0, B.2,3,4,5,6,7,8,9,10,...
6、有以下程序main() { int i,t[][3]={9,8,7,6,5
有以下程序main(){int i,t[][3]={9,8,7,6,5,4,3,2,1};for(i=0;i<3;i++)printf("%d",t[2-i][i]);}判序执行后的输出结果是()A753B357C369D751