问答题

程序通过定义学生结构体变量,存储了学生的学号、姓名和3门课的成绩。函数fun的功能是将形参a中的数据进行修改,把修改后的数据作为函数值返回主函数进行输出。 例如:传给形参a的数据中,学号、姓名、和三门课的成绩依次是:10001、"ZhangSan"、95、80、88,修改后的数据应为:10002、"LiSi"、96、81、89。 请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结果。 注意:源程序存放在考生文件夹下的BLANK1.C中。不得增行或删行,也不得更改程序的结构! 给定源程序: #include #include struct student { long sno; char name[10]; float score[3]; }; /**********found**********/ __1__ fun(struct student a) { int i; a.sno = 10002; /**********found**********/ strcpy(__2__, "LiSi"); /**********found**********/ for (i=0; i<3; i++) __3__+= 1; return a; } main() { struct student s={10001,"ZhangSan", 95, 80, 88}, t; int i; printf("\n\nThe original data :\n"); printf("\nNo: %ld Name: %s\nScores: ",s.sno, s.name); for (i=0; i<3; i++) printf("%6.2f ", s.score[i]); printf("\n"); t = fun(s); printf("\nThe data after modified :\n"); printf("\nNo: %ld Name: %s\nScores: ",t.sno, t.name); for (i=0; i<3; i++) printf("%6.2f ", t.score[i]); printf("\n"); }

【参考答案】

解题思路:本题是对结构体变量中的值进行修改并通过函数值返回。第一处:必须定义结构返回类型,所以应填:struct stu......

(↓↓↓ 点击下方‘点击查看答案’看完整答案 ↓↓↓)
热门 试题