有以下程序:
#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));
}
程序的运行结果是( )。
【正确答案】 D
【答案解析】声明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。