有以下程序 #include <stdio.h> #include <string.h> typedef struct stu { char name[10]; char

admin2020-07-28  23

问题 有以下程序
#include  <stdio.h>
#include  <string.h>
typedef   struct stu {
                   char  name[10];
                   char  gender;
                   int  score;
                 } STU;
void  f(STU  c)
{  strcpy(c.name, "Qian");
   c.gender = ’f’;
   c.score = 350;
}
main()
{  STU  a={"Zhao", ’m’, 290}, b;
   b=a;
   f(b);
   printf("%s,%c,%d,", a.name, a.gender, a.score);
   printf("%s,%c,%d\n", b.name, b.gender, b.score);
}
程序的运行结果是

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

答案A

解析 程序执行过程为:将a赋给b,调用f函数,将b中成员值传递给c,执行函数体,改变c中成员但并未改变b中成员值。故调用函数结束后,输出结构体a与b中成员值均为Zhao,m,290,A选项正确。
转载请注明原文地址:https://jikaoti.com/ti/2JD0FFFM
0

最新回复(0)