c语言用结构体录入10个学生的信息,信息包括(学号、姓名、性别、年龄),按性别打印学生信息,并统计不同性别的人数。
时间: 2023-12-22 20:22:32 浏览: 173
学生信息管理系统,实现学生信息包括:学号、姓名、性别、年龄、班级等信息。
5星 · 资源好评率100%
好的,我可以帮你编写这个程序。以下是代码:
```c
#include <stdio.h>
struct student {
int id;
char name[20];
char gender;
int age;
};
int main() {
struct student stu[10];
int male_count = 0, female_count = 0;
// 录入学生信息
for (int i = 0; i < 10; i++) {
printf("请输入第%d个学生的学号、姓名、性别(M/F)、年龄:", i + 1);
scanf("%d %s %c %d", &stu[i].id, stu[i].name, &stu[i].gender, &stu[i].age);
// 统计男女人数
if (stu[i].gender == 'M') {
male_count++;
} else if (stu[i].gender == 'F') {
female_count++;
}
}
// 打印男生信息
printf("男生信息:\n");
for (int i = 0; i < 10; i++) {
if (stu[i].gender == 'M') {
printf("学号:%d,姓名:%s,性别:%c,年龄:%d\n", stu[i].id, stu[i].name, stu[i].gender, stu[i].age);
}
}
// 打印女生信息
printf("女生信息:\n");
for (int i = 0; i < 10; i++) {
if (stu[i].gender == 'F') {
printf("学号:%d,姓名:%s,性别:%c,年龄:%d\n", stu[i].id, stu[i].name, stu[i].gender, stu[i].age);
}
}
// 输出结果
printf("男生人数:%d\n女生人数:%d\n", male_count, female_count);
return 0;
}
```
程序中定义了一个名为 `student` 的结构体,用于存储每个学生的学号、姓名、性别和年龄。在 `main()` 函数中,定义了一个包含 10 个 `student` 结构体的数组 `stu`,并用 `for` 循环依次录入每个学生的信息,并统计男女人数。然后分别打印男生和女生的信息。最后输出结果,即男生人数和女生人数。
注意:在录入性别时,需要输入大写字母 M 或 F,否则程序会出错。
阅读全文