问答题 给定程序通过定义并赋初值的方式,利用结构体变量存储了一名学生的学号、姓名和3门课的成绩。函数fun的功能是将该学生的各科成绩都乘以一个系数a。 请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。 注意:部分源程序给出如下。 不得增行或删行,也不得更改程序的结构! 试题程序: #include < stdio.h > typedef struct { int num; char name[9]; float score[3]; }STU; void show(STU tt) { int.i; print.f("%d%s:",tt.num, tt.name); for(i=0;i < 3;i++) print:f("%5.1f" ,tt.score[i]); print:f("/n"); } /*********found*********/ void modify( 【1】 *ss,float a) { int i; for(i=0;i < 3;i++) /*********found*********/ ss一 > 【2】 *=a; } main() { STU std={1,"Zhanghua",76. 5,78.0,82.0}; float:a; print:f("/nThe original num bet and name and scores:/n"); show(std); print:f("knlnput a number:"); scanf("%f",&a); /*********found*********/ modify( 【3】 ,a); printf ("/nA result of modif ying:/n"); show(std); }
【正确答案】正确答案:(1)STU (2)score[i] (3)&std
【答案解析】解析:本题考查:数组变量赋值;函数实参定义。 本题是利用结构体存储学生记录,对记录进行修改并由实参ss返回。 填空1:实参ss是一个结构型指针变量,所以应填STU。 填空2:该学生的各科成绩都乘以一个系数a,所以应填score[i]。 填空3:函数的调用,由于函数定义时使用的指针结构型变量,所以应填&std。