有以下程序 #include #include typedef struct { char name[9]; char sex; float score[2]; } STU; STU f(STU a) { STU b={"Zhao", ’m’, 85.

admin2019-08-10  65

问题 有以下程序
#include
#include
typedef struct { char name[9]; char sex; float score[2]; } STU;
STU f(STU a)
{ STU b={"Zhao", ’m’, 85.0, 90.0}; int i;
strcpy(a.name, b.name);
a.sex = b.sex;
for (i=0; i<2; i++) a.score = b.score;
return a;
}
main()
{ STU c={"Qian", ’f’, 95.0, 92.0}, d;
d=f(c);
printf("%s,%c,%2.0f,%2.0f\n",d.name,d.sex,d.score[0],d.score[1]);
}
程序的运行结果是( )。

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

答案A

解析 结构体是用户自己定义的一种数据类型,使用方法和C语言中的基本数据类型一致。函数f()中将结构体b中成员的数据分别赋值给a,所以函数的返回值为a即{"Zhao",?m?,85,90}。
转载请注明原文地址:https://jikaoti.com/ti/FVf0FFFM
0

最新回复(0)