1283. S08-05 学生成绩与学号

8.5,请参考课本例8.7程序中的函数ReadScore()和FindMax(), 从健盘输入某班学生某门课的成绩和学号(最多不超过40人),当输入为负值时,表示输入结束,用函数编程通过返回数组中最大元素的下标,查找并输出成绩的最高分及其对应的学生学号。

输入

学号和成绩,直到有负数的出现

输出

有效人数,最高分人的分数和学号

样例

标准输入 复制文本
1001 98
1002 99
1003 92
1001 -1
标准输出 复制文本
Total students are 3
The highest is 1002, score is 99
标准输入 复制文本
202001 56
202002 98
-1 100
标准输出 复制文本
Total students are 2
The highest is 202002, score is 98
标准输入 复制文本
2020023861 500
2020023877 20
-1 -1
标准输出 复制文本
Total students are 2
The highest is 2020023861, score is 500

提示

main()给出,此题重点在于两个函数的实现。

int ReadScore(int score[], long num[]); int FindMax(int score[], int n); int main(void) { int score[N], maxNum, n; long num[N]; n = ReadScore(score, num); /* 输入成绩,返回学生人数 */ printf("Total students are %d\n", n); maxNum = FindMax(score, n); /* 计算并返回最高分所在数组的下标 */ printf("The highest is %ld, score is %d\n", num[maxNum], score[maxNum]); return 0; }

登录以提交代码。
单点时限 1 秒
内存限制 128 MB
提交 1657
通过 961