在c语言中,通讯录中包含:姓名、性别、出生日期、 手机号这几项。现需要根据通讯录统计 2000 年后(包括 2000 年)出生的男生人数, 请编程创建这 个通讯并完成符合条件的人数统计要求。
时间: 2024-02-16 10:04:49 浏览: 59
好的,我可以为您编写这个程序。下面是 C 语言的代码:
```c
#include <stdio.h>
#include <string.h>
#define MAX_SIZE 100
#define YEAR 2000
struct Contact {
char name[20];
char gender;
int birth_year;
char phone[15];
};
int main() {
struct Contact contacts[MAX_SIZE];
int count = 0;
int male_count = 0;
// 输入通讯录信息
printf("请输入通讯录信息:\n");
while (count < MAX_SIZE) {
printf("请输入第 %d 个人的姓名(输入 'exit' 结束输入):", count+1);
scanf("%s", contacts[count].name);
if (strcmp(contacts[count].name, "exit") == 0) {
break;
}
printf("请输入性别(m/f):");
scanf(" %c", &contacts[count].gender);
printf("请输入出生年份(yyyy):");
scanf("%d", &contacts[count].birth_year);
printf("请输入手机号码:");
scanf("%s", contacts[count].phone);
count++;
}
// 统计符合条件的人数
for (int i = 0; i < count; i++) {
if (contacts[i].birth_year >= YEAR && contacts[i].gender == 'm') {
male_count++;
}
}
printf("2000 年及以后出生的男生人数为:%d\n", male_count);
return 0;
}
```
程序会先创建一个 `Contact` 结构体,包含姓名、性别、出生年份、手机号码这几项信息。然后程序会让用户输入通讯录信息,最多输入 100 个人的信息,直到用户输入 `exit` 结束输入。接着程序会统计通讯录中符合条件的人数(出生年份大于等于 2000 年且性别为男)。最后输出符合条件的人数。
希望可以帮到您!
阅读全文
相关推荐














