问题 单项选择题

有以下程序
struct s
{ int x,y; } data[2]={10,100,20,200};
main()
struct s *p=data;
printf("%d\n",++(p->x));
程序运行后的输出结果是

A.10

B.11

C.20

D.21

答案

参考答案:B

解析: 本题中定义了一个结构体数组data[2]并初始化,主函数中定义了一个结构体类型指针变量并让它指向data的首地址,由于 p指向第一个元素的地址,所以p->x相当于data[0].x即为10,所以++(p->x)后的值为11.所以,4个选项中选项B符合题意。

单项选择题
填空题