柠檬试题库
search
首页 计算机 公务员 驾照 关于

有以下程序 #include main() { int a[3][4]={ 1,3,5,7,9,11,13,15,17,19,21,23}, (*p)[4]=a,i,j,k=0; for( i=0; i<3; i++ ) for( j=0; j<2; j++ ) k=k+*(*(p+i)+j); printf("%d\n", k ); } 程序运行后的输出结果是


  • A.108
  • B.68
  • C.99
  • D.60
热度🔥2,722
参考答案:D
解析:

【解析】该题首先给二维数组赋值a[3][4]={{1,3,5,7}{9,11,13,15}{17,19,21,23}};(*p)[4]=a指针p指向二维数组a的首地址,接下来执行for循环,首先 i=0,j=0时k=k+*(*(p+0)+0)=1(a[0][0]);然后 i=0,j=1时k=k+*(*(p+0)+1)=4(a[0][1]);然后j=2时,跳出j的循环,执行i的循环i=1,j=0 时k=k+*(*(p+1)+0)=13(a[1][0]);依次类推一直到i=3时跳出全部循环。循环语句在这里的功能是累加二维数组第1列和第2列的元素,累加结果为60。
复制题目向AI提问