问答题
己知学生的记录由学号和学习成绩构成,N名学生的数据已存入结构体数组a中。请编写函数fun,函数的功能是:找出成绩最高的学生记录,通过形参指针传回主函数(规定只有一个最高分)。已给出函数的首部,请完成该函数。 注意:部分源程序存在文件PROG1.C中。 请勿改动主函数mam和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 #include
#include
#define N 10 typedef struct ss { char num[10]; int s; } STU; fun(STU a[],STU *s) { } main () { "A06",90 },{ "A07",79J,{ "A08",61} , int i; printf("***** The original data *****/n"); for (i=0; 1< N; i++)printf("No = %s Mark = %d/n", printf ("The top : % s ,% d/n", m.num,m.s); NONO () : } NONO () FILE *rf,*wf ; STU a[N],m ; int i ; rf = fopen ("in.dat","r") ; wf= fopen "'out.dat","w") ; for (i = 0 ; i < 10; 1++) fscanf (rf, "% s % d", a[i] .num. &a [i] .s) ; fprintf (wf,"The top : % s,% d/n", m.num, m. s) ; fclose (rf) fclose (wf) }
【正确答案】
正确答案:1 int i, max=a[O].s, j=0; 2 for(i=1; i
【答案解析】
解析:该程序功能是求最高分数的学生。本题是关于求解结构体中某些成员的最大值,首先将第一个值设定为最大值,并在循环中将其他所有值与该值进行比较,求得最大值。然后将最大值与所有值进行比较,求得所有的最大值。
提交答案
关闭