c语言 从控制台输入3位同学的一组信息,包括学号、姓名、语文成绩、数学成绩,输出每位同学的平均分和总分。 要求:1) 定义用于存储学生信息的结构体;2) 使用结构体数组存储所有学生信息;3) 使用数组下标访问结构体数组中的元素。
时间: 2025-01-23 11:12:42 AIGC 浏览: 55
在C语言中,首先我们需要定义一个结构体(struct)来存储每个学生的学号、姓名以及两门课程的成绩。接着,我们创建一个结构体数组来存储所有学生的数据,并通过索引来访问结构体内的各项内容。这里是一个简单的示例:
```c
#include <stdio.h>
#include <string.h> // 引入字符串处理库
// 定义学生信息结构体
typedef struct {
int student_id; // 学号
char name[50]; // 姓名
float chinese_score; // 语文成绩
float math_score; // 数学成绩
} Student;
// 主函数
int main() {
const int num_students = 3; // 输入的学生人数
Student students[num_students];
for (int i = 0; i < num_students; i++) {
printf("请输入第%d位同学的信息(学号,姓名,语文成绩,数学成绩):\n", i + 1);
scanf("%d %s %f %f", &students[i].student_id, students[i].name, &students[i].chinese_score, &students[i].math_score);
}
for (int i = 0; i < num_students; i++) {
float total_score = students[i].chinese_score + students[i].math_score;
float average_score = total_score / 2.0; // 平均分(假设两门课权重相等)
printf("第%d位同学的信息:\n", i + 1);
printf("学号:%d\n", students[i].student_id);
printf("姓名:%s\n", students[i].name);
printf("平均分:%.2f 分\n", average_score);
printf("总分:%.2f 分\n", total_score);
printf("\n");
}
return 0;
}
阅读全文