有以下程序 #include <stdio.h> struct STU{ char name[9]; char sex; int score[2]; } ; void f( struct STU a[] )

admin2020-07-28  25

问题 有以下程序
     #include <stdio.h>
     struct  STU{ char  name[9];  char  sex; int  score[2];  } ;
     void  f( struct STU  a[] )
     {  struct  STU  b = {"Zhao", ’m’, 85, 90};
        a[1] = b;
     }
     main()
     {  struct  STU  c[2]={ {"Qian", ’f’, 95, 92}, {"Sun", ’m’, 98, 99} };
        f(c);
        printf( "%s,%c,%d,%d,", c[0].name,  c[0].sex,  c[0].score[0],  c[0].score[1] );
        printf( "%s,%c,%d,%d\n", c[1].name,  c[1].sex,  c[1].score[0],  c[1].score[1] );
     }
程序运行后输出结果是

选项 A、Qian,f,95,92,Sun,m,98,99
B、Qian,f,95,92,Zhao,m,85,90
C、Zhao,m,85,90,Sun,m,98,99
D、Zhao,m,85,90,Qian,f,95,92

答案B

解析 本题考查把数组名作为函数参数,执行f函数后,结构体数组c的第二个元素被改写,c[1].name为Zhao,选项B正确。
转载请注明原文地址:https://kaotiyun.com/show/IW3p777K
0

最新回复(0)