//第一种是我自己想的后面的是参考答案 //编写函数fun 他的功能是:把分数最高的学生放在h所指的数组中注意分数最高的学生肯能不止一个 //人数为N int fun(STREC *a, STREC *b) { int i; for (i = 0; i < N - 1; i++)//利用循环求出最大值 { if (a[i].s < a[i + 1].s) { a[i].s = a[i + 1].s; a[i].num = a[i + 1].num; } b[0].s = a[i - 1].s; b[0].num = a[i - 1].num;
for (i = 1,j=1; i < N; i++)//利用循环将最大值与其他几个做对比并存储到b结构体中 { if (b[0].s == a[i].s) { b[j++].s = b[0].s; b[j++].num = a[i].num; } } }int i, max = a[0].s,n =0;for (i = 1; i < N; i++)if (max < a[i].s)max = a[i].s;for (i = 0; i < N;i++){if (max == a[i].s)b[n++] = a[i];}//他
原文:http://blog.csdn.net/u012878380/article/details/44262607