有以下程序: #include struct S { int a,b;}data[2]={10,100,20,200}; main( ) { struet S p=data[1]; printf("

admin2020-11-27  14

问题 有以下程序:
    #include  
    struct  S
    {  int a,b;}data[2]={10,100,20,200};
    main( )
    {  struet S p=data[1];
    printf("%d\n",++(P.a));
    }
    程序运行后的输出结果是(    )。

选项 A、10
B、11
C、20
D、21

答案D

解析 声明data是结构s数组。初始化da-ta[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,先增l等于2l。
转载请注明原文地址:https://kaotiyun.com/show/di3p777K
0

最新回复(0)