C语言实现*****4.修改学生成绩****
时间: 2024-03-01 22:48:06 浏览: 17
要实现学生成绩的修改功能,可以使用C语言的结构体和数组来存储学生信息和成绩。以下是一个简单的示例代码:
```c
#include <stdio.h>
// 定义学生结构体
struct Student {
char name[20];
int score;
};
int main() {
int num; // 学生数量
printf("请输入学生数量:");
scanf("%d", &num);
// 创建学生数组
struct Student students[num];
// 输入学生信息和成绩
for (int i = 0; i < num; i++) {
printf("请输入第%d个学生的姓名:", i + 1);
scanf("%s", students[i].name);
printf("请输入第%d个学生的成绩:", i + 1);
scanf("%d", &students[i].score);
}
// 输出学生信息和成绩
printf("学生信息和成绩如下:\n");
for (int i = 0; i < num; i++) {
printf("姓名:%s,成绩:%d\n", students[i].name, students[i].score);
}
// 修改学生成绩
int index;
printf("请输入要修改成绩的学生序号(从1开始):");
scanf("%d", &index);
if (index >= 1 && index <= num) {
printf("请输入新的成绩:");
scanf("%d", &students[index - 1].score);
printf("修改成功!\n");
} else {
printf("输入的学生序号无效!\n");
}
// 输出修改后的学生信息和成绩
printf("修改后的学生信息和成绩如下:\n");
for (int i = 0; i < num; i++) {
printf("姓名:%s,成绩:%d\n", students[i].name, students[i].score);
}
return 0;
}
```
这段代码首先会要求输入学生数量,然后根据数量创建一个学生数组。接下来,通过循环输入每个学生的姓名和成绩,并将其存储在数组中。然后,会输出所有学生的信息和成绩。
接着,会要求输入要修改成绩的学生序号,并检查输入的序号是否有效。如果有效,会要求输入新的成绩,并将其更新到对应学生的结构体中。最后,会输出修改后的所有学生信息和成绩。
注意:这只是一个简单的示例代码,实际应用中可能需要更复杂的逻辑和错误处理。