填空题 有以下程序: # include<string.h> struct STU { char name[10]; int num;}; void f(char *name, int num) { struct STU s[2]={{"SunDan",20044},{"Penghua",20045}}; num=s[0].num; strcpy(name,s[0].name); } main() { struct STU s[2]={{"YangSan",20041},{"LiSiGuo",20042}},*p; p=&s[1];f(p->name,p->num); printf("%s %d/n",p->name,p->num); } 程序运行后的输出结果是{{U}} 【8】 {{/U}}。
  • 1、
【正确答案】 1、SunDan 20042    
【答案解析】[解析] f函数中形参1用的是显式传地址的方式,因此p->name的值发生改变,而形参2用的传值的方式,在调用时不改变实参的值,因此p->num的值不发生变化。