问题
单项选择题
有以下程序 struc STU { char name[10]; int num; }; void f1(struct STU c) { struct STU b={“LiSiGuo”,2042}; c=b; } void f2(struct STU *c) { struct STU b={“SunDan”,2044}; *c=b; } main( ) { struct STU a={“YangSan”,2041},b={“WangYin”,2043 }; f1(a);f2(&b); printf(“%d %d\n”,a.num,b.num); } 执行后的输出结果是( )A)2041 2044B)2041 2043C)2042 2044D)2042 2043
答案
参考答案:A
解析:经过函数调用,n()没有改变实参早的值,f2()改变了实参b的值。