给定程序通过定义并赋初值的方式,利用结构体变量存储了一名学生的学号、姓名和3门课的成绩。函数fun的功能是将该学生的各科成绩都乘以一个系数a。
注意:不得增行或删行,也不得更改程序的结构!
试题程序:
#include< stdio.h >
typedef struct{
int num;
char name[9];
float score[3];
}STU;
void show(STU tt)
{
int i;
printf("%d %s:",tt.num,tt.name);
for(i=0;i< 3;i++)
printf("%5.1f",tt.score[i]);
printf("\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;
printf("The original number andname and scores:\n");
show(std);
printf("Input a number:");
scanf("%f",&a);
/******found******/
modify(【3】,a);
printf("A result of modifying:\n");
show(std);
}
【正确答案】 (1)STU
(2)score[i]
(3)&std
【答案解析】本题考查:数组变量赋值;函数实参定义。
本题是利用结构体存储学生记录,对记录进行修改并由实参ss返回。
填空1:实参ss是一个结构型指针变量,所以应填STU。
填空2:该学生的各科成绩都乘以一个系数a,所以应填score[i]。
填空3:函数的调用,由于函数定义时使用的指针结构型变量,所以应填&std。