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

admin2019-07-14  32

问题 有以下程序:
    #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、10
B、11
C、20
D、21

答案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。
转载请注明原文地址:https://jikaoti.com/ti/Wcf0FFFM
0

最新回复(0)