若有以下程序 typedef struct stu { char name[10], gender; int score; } STU; void f(STU a, STU b) { b = a; printf( "%s,%c,%d,", b.nam

admin2020-07-28  37

问题 若有以下程序
typedef struct stu { char name[10], gender; int score; } STU;
void f(STU a, STU b) {
b = a;
printf( "%s,%c,%d,", b.name, b.gender, b.score ); }
main() {
STU a={"Zhao", ’m’, 290}, b={"Qian", ’f’, 350};
f(a,b);
printf("%s,%c,%d\n", b.name, b.gender, b.score); }
则程序的输出结果是

选项 A、Zhao,m,290, Zhao,m,290
B、Zhao,m,290,Qian,f,350
C、Qian,f,350,Qian,f,350
D、Zhao,m,290,Zhao,f,350

答案B

解析 函数f(STU a,STU b)的主要功能是为把结构体变量a的值存放到b中,然后输出b中各个成员的值。主函数中调用函数f(a,b),输出赋值以后b的数据,实际为a{"Zhao", ’m’, 290}的数据,函数调用结束,形参a和b撤销,流程到主函数输出b{"Qian", ’f’, 350}的数据。
转载请注明原文地址:https://kaotiyun.com/show/Gb3p777K
0

最新回复(0)