有10个学生,每个学生的数据包括学号(num)、姓名(name【9】)、性别(sex)、年龄(age)、三门课成绩(score【3】),要求在main()函数中输入这10个学生的数据,并对每个学生调用函数count()计算总分和平均分,然后在main()函数中输出所有各项数据(包括原有的和新求出的),编写程序
时间: 2023-03-31 15:00:19 浏览: 111
好的,我可以回答这个问题。以下是程序的代码:
#include <stdio.h>
struct student {
int num;
char name[10];
char sex;
int age;
int score[3];
int total;
float average;
};
void count(struct student *s) {
s->total = ;
for (int i = ; i < 3; i++) {
s->total += s->score[i];
}
s->average = (float)s->total / 3;
}
int main() {
struct student stu[10];
for (int i = ; i < 10; i++) {
printf("请输入第%d个学生的数据:\n", i+1);
printf("学号:");
scanf("%d", &stu[i].num);
printf("姓名:");
scanf("%s", stu[i].name);
printf("性别:");
scanf(" %c", &stu[i].sex);
printf("年龄:");
scanf("%d", &stu[i].age);
printf("三门课成绩:");
for (int j = ; j < 3; j++) {
scanf("%d", &stu[i].score[j]);
}
count(&stu[i]);
}
printf("学号\t姓名\t性别\t年龄\t成绩1\t成绩2\t成绩3\t总分\t平均分\n");
for (int i = ; i < 10; i++) {
printf("%d\t%s\t%c\t%d\t%d\t%d\t%d\t%d\t%.2f\n", stu[i].num, stu[i].name, stu[i].sex, stu[i].age, stu[i].score[], stu[i].score[1], stu[i].score[2], stu[i].total, stu[i].average);
}
return ;
}
希望这个程序能够帮到你!
阅读全文