c语言结构体编程题
- 格式:pdf
- 大小:74.71 KB
- 文档页数:2
题目:编写一个程序,使用结构体表示一个学生的信息,包括姓名、年龄、学号和成绩,并提供相应的函
数进行信息输入、输出和计算平均成绩。
c复制代码
#include
#include
struct student {
char name[20];
int age;
int id;
float score;
};
void input_student(struct student *s) {
printf("请输入学生姓名:");
scanf("%s", s->name);
printf("请输入学生年龄:");
scanf("%d", &s->age);
printf("请输入学生学号:");
scanf("%d", &s->id);
printf("请输入学生成绩:");
scanf("%f", &s->score);
}
void output_student(const struct student *s) {
printf("学生姓名:%s\n", s->name);
printf("学生年龄:%d\n", s->age);
printf("学生学号:%d\n", s->id);
printf("学生成绩:%.2f\n", s->score);
}
float average_score(const struct student *s, int n) {
float sum = 0;
for (int i = 0; i < n; i++) {
sum += s[i].score;
}
return sum / n;
}
int main() {
struct student s[3];
input_student(&s[0]);
input_student(&s[1]);
input_student(&s[2]);
printf("平均成绩为:%.2f\n", average_score(s, 3));
output_student(&s[0]);
output_student(&s[1]);
output_student(&s[2]);
return 0;
}
在这个示例中,我们定义了一个结构体
student来表示学生的信息,包括姓名、年龄、学号和成绩。然
后,我们定义了三个函数
input_student、
output_student和
average_score来分别进行信息输入、输出
和计算平均成绩的操作。在主函数中,我们声明了一个包含三个学生的结构体数组,并使用
input_student函数分别输入三个学生的信息。接着,我们使用average_score函数计算三个学生的平均
成绩,并使用
output_student函数输出三个学生的信息。