C语言,这题解释是不是错了
第26题(本题:1分)有以下程序#include<stdio.h>main(){inta[5]={2,4,6,8,10},*p,**k;p=a;k=&p;printf("...
第26题(本题:1分)
有以下程序
#include <stdio.h>
main()
{ int a[5]={2,4,6,8,10}, *p,**k;
p = a; k = &p;
printf("%d ", *( p++ ) );
printf("%d\n", **k );
}
程序运行后的输出结果是( B )。
A) 4 6 B) 4 4 C) 2 2 D) 2 4
正确答案:D
答疑:解析】首先通过p=a使p指向数组的第1个元素,所以输出2;在输出2以后,由于p++,
即p就指向数组的第2个元素,**k就是取出p所指向元素的值,而p指向的是数组的第2个元素,即输出4。因此D选项正确。 展开
有以下程序
#include <stdio.h>
main()
{ int a[5]={2,4,6,8,10}, *p,**k;
p = a; k = &p;
printf("%d ", *( p++ ) );
printf("%d\n", **k );
}
程序运行后的输出结果是( B )。
A) 4 6 B) 4 4 C) 2 2 D) 2 4
正确答案:D
答疑:解析】首先通过p=a使p指向数组的第1个元素,所以输出2;在输出2以后,由于p++,
即p就指向数组的第2个元素,**k就是取出p所指向元素的值,而p指向的是数组的第2个元素,即输出4。因此D选项正确。 展开
2个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询