【单选题】下列程序正确的运行结果为( ) #include<stdio.h> main() {int a[]={2,6,8,10,14,18); int *ptr[-]={&a[0],&a[1],&a[2],&a[3],&a[4]); int i; for(i=0;i<5;i++) a[i]=a[i]/2+a[i] printf("%d\n",*(*(ptr+2))); printf("%d\n",*(*ptr)); }
A.1221
B.2112
C.123
D.312
网考网参考答案:A
网考网解析:
[解析]
#include<stdio.h>
main()
{int a[]={2,6,8.10,14,18);
int *ptr[]={&a[4],&a[3],&a[2],&a[1],&a[0]};/*定义一个指向整型数据的指针的数组,并以数组a的前5个元素的地址为初值*/
for(i=0;i<5;i++)
a[i]=a[i]/2+a[i];/*数组a的元素分别加上各自现有值的1/2并保存在该元素中*/
printf("%d\n",*(*(ptr+2)));/*输出的是指针数组ptr的第三个元素所指向的数组a的元素值*/
printf("%d\n",*(*ptr));/*输出的是指针数组ptr的第一个元素所指向的数组a的元素值*/
}
查看试题解析出处>>
发布评论 查看全部评论