A-A+

以下程序运行后 输出结果为______。 main() { int a[2][3]={1 3

2022-08-06 05:21:52 问答库 阅读 176 次

问题详情

以下程序运行后,输出结果为______。 main() { int a[2][3]={1,3,5,7,9,11},*s[2],**pp,*p; s[0]=a[0],s[1]=a[1]; pp=s; p=(int*)malloc(sizeof(int)); **pp=s[1][1]; p=*pp; printf("%dn",*p); }
A.1
B.7
C.9
D.11请帮忙给出正确答案和分析,谢谢!

参考答案

正确答案:C
解析:s是一个含有两个元素的指针数组,pp是—个指向指针变量的指针,s[0]是指向二维数组a行下标为0的元素的首地址,即a[0][0]的地址,s[1]为a[1][0]的地址。pp的值为s[0]的地址。**pp=s[1][1]后,a[O][0]的值将被赋值为a[1][1]的值,执行p=*PP;后,p中将是s[0]的值,最后的输出语句将输出地址s[0]所指向的数据,即a[0][0]。

考点:结果,程序