用c需要写一个输入n个学生的m门成绩的函数
时间: 2024-09-13 07:06:29 浏览: 27
从键盘上输入N 个学生的姓名及M科考试成绩,找出成绩最高/低的学生,显示 该学生的姓名及他的总分和平均分 要求考虑成绩相同的情况
5星 · 资源好评率100%
在C语言中,编写一个输入n个学生的m门成绩的函数,可以使用二维数组来存储这些成绩,并通过循环来输入每个学生的成绩。以下是一个简单的函数实现示例:
```c
#include <stdio.h>
#define MAX_STUDENTS 100
#define MAX_SUBJECTS 10
// 函数声明
void inputScores(int students, int subjects, float scores[][MAX_SUBJECTS]);
int main() {
int n, m;
printf("请输入学生人数: ");
scanf("%d", &n);
printf("请输入课程门数: ");
scanf("%d", &m);
// 声明一个二维数组来存储成绩
float scores[MAX_STUDENTS][MAX_SUBJECTS];
// 输入学生成绩
inputScores(n, m, scores);
// 输出学生成绩,验证输入是否正确
printf("\n输入的学生成绩如下:\n");
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
printf("学生 %d 的第 %d 门课成绩为: %.2f\n", i + 1, j + 1, scores[i][j]);
}
}
return 0;
}
// 函数定义
void inputScores(int students, int subjects, float scores[][MAX_SUBJECTS]) {
for (int i = 0; i < students; i++) {
printf("请输入第 %d 个学生的成绩:\n", i + 1);
for (int j = 0; j < subjects; j++) {
printf("课程 %d: ", j + 1);
scanf("%f", &scores[i][j]);
}
}
}
```
这个程序中包含了一个名为`inputScores`的函数,它接受学生人数`students`和课程门数`subjects`作为参数,并通过一个二维数组`scores`来存储成绩。函数内部使用两个嵌套的循环来输入每个学生的成绩。
阅读全文