c
#include <stdio.h>
#include <string.h>
// 定义电话号码结构体
struct PhoneBook {
char name[20]; // 姓名
char phoneNumber[20]; // 电话号码
};
// 定义电话本数组,存储电话号码信息
struct PhoneBook phoneBook[100]; // 假设最多存储 100 个电话号码信息
int phoneCount = 0; // 当前电话本中的记录数
// 添加电话号码信息到电话本中

void addPhone() {
struct PhoneBook newPhone;
printf("请输入姓名:");
scanf("%s", newPhone.name);
printf("请输入电话号码:");
scanf("%s", newPhone.phoneNumber);
phoneBook[phoneCount++] = newPhone; // 将新电话号码信息添加到电话本数组中
// 查询电话号码信息
void queryPhone() {
char name[20]; // 待查询姓名
printf("请输入要查询的姓名:");
scanf("%s", name); // 输入待查询姓名
int i; // 循环计数器
for (i = 0; i < phoneCount; i++) { // 遍历电话本数组,查找姓名匹配的电话号码信息
if (strcmp(name, phoneBook[i].name) == 0) { // 如果找到匹配的姓名,输出对应的电话号码信息并退出循环
printf("姓名:%s,电话:%sn", phoneBook[i].name, phoneBook[i].phoneNumber);
return; // 返回上一层函数,结束查询操作
}
}
printf("未找到该姓名对应的电话号码信息,n"); // 如果未找到匹配的姓名,输出提示信息并结束查询操作
int main() {
int choice; // 用户选择的操作类型(添加或查询)
while (1) { // 循环执行用户操作,直到用户选择退出程序为止
printf("请选择操作类型:n"); // 输出操作类型选项菜单给用户选择操作类型(添加或查询)并等待用户输入选择结果,根据用户的选择执行相应的操作,如果用户选择退出程序,则跳出循环并结束程序运行,在操作过程中,可以根据实际需求添加更多的功能,如删除电话号码信息等,可以根据实际需求对代码进行优化和改进,提高程序的效率和稳定性,需要注意对用户输入的数据进行合法性检查和处理,避免程序出现错误或崩溃等问题,需要注意代码的可读性和可维护性,以便于后续的维护和修改。"); printf("添加电话:n查询电话:n退出:n"); scanf("%d", &choice); switch (choice) { case 1: addPhone(); break; case 2: queryPhone(); break; case 3: printf("程序退出,n"); return 0; default: printf("输入有误,请重新输入,n"); break; } } return 0; }```这是一个简单的电话查询系统,它允许用户添加新的电话号码到电话簿中,并允许用户查询电话簿中的电话号码,请注意这只是一个基本的示例,你可以根据需要添加更多的功能或者改进现有的功能,例如你可以增加删除电话号码的功能或者对电话号码进行排序等等,在实际使用中还需要考虑错误处理等问题。





