编写一个结构体类型的程序,定义一个结构体变量 struct student ,其包含学号,姓名, 三门课的成绩,成绩用数组保存,要求输入 10 个结构体变量学生的学号、姓名、3 门课程
时间: 2023-03-28 07:01:38 浏览: 134
下面程序是定义一个结构体,并为其定义结构体变量,对其值输入、输出。
5星 · 资源好评率100%
的成绩,并输出每个学生的总分和平均分。
以下是代码示例:
#include <stdio.h>
#define NUM_OF_STUDENTS 10
#define NUM_OF_COURSES 3
struct student {
int id;
char name[20];
int scores[NUM_OF_COURSES];
int total_score;
float avg_score;
};
int main() {
struct student students[NUM_OF_STUDENTS];
// 输入学生信息
for (int i = ; i < NUM_OF_STUDENTS; i++) {
printf("请输入第 %d 个学生的学号、姓名和三门课的成绩:\n", i + 1);
scanf("%d %s %d %d %d", &students[i].id, students[i].name, &students[i].scores[], &students[i].scores[1], &students[i].scores[2]);
// 计算总分和平均分
students[i].total_score = students[i].scores[] + students[i].scores[1] + students[i].scores[2];
students[i].avg_score = (float)students[i].total_score / NUM_OF_COURSES;
}
// 输出学生信息
for (int i = ; i < NUM_OF_STUDENTS; i++) {
printf("学号:%d,姓名:%s,总分:%d,平均分:%.2f\n", students[i].id, students[i].name, students[i].total_score, students[i].avg_score);
}
return ;
}
阅读全文