单选题 有以下程序:
#include<stdio.h>
#include<string.h>
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[i]=b.score[i];
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]);
}
程序的运行结果是______。
【正确答案】 C
【答案解析】[解析] 本题考查的重点是对向函数传递结构体的理解。用结构体做函数的参数时,是按传值规则把全部结构传给函数,因此,函数内对结构内容的修改不影响原结构,即退出函数时,原结构内容不变。本题中,d中的值应为b中的值,所以选项C是正确的。