选择题
有以下程序
#include <stdio.h>
struct S
{int a,b;} data[2]={10,100,20,200);
main()
{ struct S p=data[1];
printf('%d\n',++(p.A));
}
程序运行后的输出结果是______。
【正确答案】
A
【答案解析】声明data是结构S的数组。初始化时“data[0].a=10; data[0].b=100; data[1].a=20; data[1].b=200”。主函数中p=data[1],即“p.a=data[1].a; p.b=data[1].b;”,执行语句“printf('%d\n',++(p.A));”打印输出时p.a先增1再打印。即p.a=data[1].a=20,先增1等于21,因此程序运行结果是21。