有以下程序: #include<stdio.h> main() { int aaE3][3]={{2),{4),{6)),i,*p=&aa[0][0]: for(i=0;i<2;i++) {

admin2019-01-11  27

问题 有以下程序:
    #include<stdio.h>
    main()
    {
      int aaE3][3]={{2),{4),{6)),i,*p=&aa[0][0]:
      for(i=0;i<2;i++)
      {
        if(i==0)
          aa[i+1]=*p+1;
        else++p:
        printf("%d",*p);
      }
    }
    程序运行后的输出结果是(    )。

选项 A、2 6
B、2 3
C、4 3
D、4 6

答案B

解析 本题主要考查指针与数组。观察题目,可以发现,*p=&[0][0]语句实际是将数组a的首地址赋给了指针变量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。故B选项正确。
转载请注明原文地址:https://kaotiyun.com/show/sKxp777K
0

相关试题推荐
最新回复(0)