用c语言1.一个班有10个学生的成绩,要求输入这10个学生的成绩,然后要求(10分):(1)输出其中成绩最高的学生成绩及其序号;(2)输出这些学生的平均成绩
时间: 2024-11-09 22:19:23 浏览: 31
C语言程序设计-有一个一维数组score,内放10个学生的成绩,用一个函数来求平均成绩;
5星 · 资源好评率100%
在 C 语言中,你可以使用数组来存储学生的成绩,并通过循环遍历数组来查找最高分和计算平均分。以下是简单的实现步骤:
首先,创建一个结构体 `Student` 来存储学生的信息,包含成绩和序号:
```c
typedef struct {
int score;
int student_id; // 学生序号
} Student;
```
接着,定义数组 `students` 来存放10个学生的成绩:
```c
Student students[10];
```
获取用户输入并填充数组:
```c
for (int i = 0; i < 10; i++) {
printf("请输入第 %d 个学生的成绩:", i+1);
scanf("%d", &students[i].score);
printf("请输入第 %d 个学生的序号:", i+1);
scanf("%d", &students[i].student_id);
}
```
接下来,找到最高分和对应的学生序号:
```c
int max_score = students[0].score;
int max_student_id = 0;
for (int i = 1; i < 10; i++) {
if (students[i].score > max_score) {
max_score = students[i].score;
max_student_id = i + 1;
}
}
printf("成绩最高的学生序号是 %d,成绩为 %d 分。\n", max_student_id, max_score);
```
最后,计算平均成绩:
```c
int sum = 0;
for (int i = 0; i < 10; i++) {
sum += students[i].score;
}
float average_score = (float)sum / 10;
printf("这些学生的平均成绩是 %.2f 分。\n", average_score);
```
完整的程序会包括上述所有部分。
阅读全文