问题 单项选择题

有以下程序:#includestructSTU{ intnum;floatTotalScore;};void f(struct STUp){struct STUs[2]={{20044,550},{20045,537}};p.num=s[1].num;p.TotalScore=s[1].TotalScore;}main(){ struct STUs[2]= {{20041,703},{20042,580}};f(s[0]);printf("%d%3.0f\n",s[0].num,s[0].TotalScore);}程序运行后的输出结果是______。

A.20045 537

B.20044 550

C.20042 580

D.20041 703

答案

参考答案:D

解析:本题定义了结构体类型的变量 p 作为形参,并将结构体变量 s[0]中的值传递给了形参变量 p,在函数f 中,又对 p 中的内容作了改变,但这种改变对主函数中 s[0]的值并不产生影响,所以主函数中输出 s[0]的 数据依然是在主函数中初始化时的数据。

填空题