用C语言结构体编程构建简单的手机通讯录 ① 联系人的基本信息:姓名、年龄和联系电话 ② 最多容纳50名联系人的信息 ③ 具有新建联系人和查询联系人的功能
时间: 2023-05-11 14:05:12 浏览: 1312
答案:
以下是一个简单的用C语言结构体编程构建手机通讯录的示例代码:
#include <stdio.h>
#include <string.h>
#define MAX_CONTACTS 50
struct Contact {
char name[50];
int age;
char phone[20];
};
struct Contact contacts[MAX_CONTACTS];
int numContacts = 0;
void addContact() {
if (numContacts >= MAX_CONTACTS) {
printf("通讯录已满,无法添加新联系人!\n");
return;
}
struct Contact newContact;
printf("请输入联系人姓名:");
scanf("%s", newContact.name);
printf("请输入联系人年龄:");
scanf("%d", &newContact.age);
printf("请输入联系人电话:");
scanf("%s", newContact.phone);
contacts[numContacts] = newContact;
numContacts++;
printf("联系人已添加到通讯录中。\n");
}
void searchContact() {
char name[50];
printf("请输入要查询的联系人姓名:");
scanf("%s", name);
int found = 0;
for (int i = 0; i < numContacts; i++) {
if (strcmp(name, contacts[i].name) == 0) {
printf("联系人姓名:%s\n", contacts[i].name);
printf("联系人年龄:%d\n", contacts[i].age);
printf("联系人电话:%s\n", contacts[i].phone);
found = 1;
break;
}
}
if (!found) {
printf("未找到该联系人。\n");
}
}
int main() {
while (1) {
printf("请选择要执行的操作:\n");
printf("1. 新建联系人\n");
printf("2. 查询联系人\n");
printf("3. 退出程序\n");
int choice;
scanf("%d", &choice);
switch (choice) {
case 1:
addContact();
break;
case 2:
searchContact();
break;
case 3:
printf("程序已退出。\n");
return 0;
default:
printf("无效的选择,请重新输入。\n");
}
}
}
注意:这只是一个简单的示例代码,实际上还有很多需要改进的地方,比如输入的合法性检查、联系人信息的修改和删除等。
阅读全文