有以下程序: #include main() { int ilia[3][3]={{2},{4},{6}},i,*P=&aa[0][0]; for(i=0;i

admin2019-06-09  23

问题 有以下程序:
  #include
  main()
  {
    int ilia[3][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);
    }
    printf(“\n”);
    }
程序运行后的输出结果是(    )。

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

答案B

解析 本题主要考查指针与数组。观察题目,可以发现,*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。故B选项正确。
转载请注明原文地址:https://jikaoti.com/ti/6Df0FFFM
0

最新回复(0)