有以下程序: #include <stdio.h> struct s { int x,y;} data[2]={10,100,20,200}; main() { struct s *p=data; prin

admin2013-06-11  27

问题 有以下程序:    #include  <stdio.h>    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

答案2

解析 本题考查对外部存储类型的结构体变量进行初始化。初始化后,data[0]x的值为 10,data[0]y的值为100。输出++(p->x)时,++(p->x)就相当于++data[0].x,这时 data[0].x先自增,再使用,所以输出11。
转载请注明原文地址:https://jikaoti.com/ti/Iln0FFFM
0

最新回复(0)