编写一程序,实现电话号码查询。假设有一电话号码表,信息包括户主的姓名、身份证号、户主地址、电话号码,输入一个电话号码,找出该号码对应的户主的姓名、地址。(用结构体实现)
时间: 2023-04-27 22:05:58 浏览: 351
VB做的电话号码查询程序.zip_vb 查询_vb程序_visual basic_电话_电话号码
好的,以下是用中文回复的程序:
#include <stdio.h>
#include <string.h>
#define MAX_SIZE 100 // 定义电话号码表的最大容量
// 定义结构体,表示电话号码表中的一条记录
struct PhoneNumber {
char name[20]; // 姓名
char id[20]; // 身份证号
char address[50]; // 地址
char number[20]; // 电话号码
};
int main() {
struct PhoneNumber phoneBook[MAX_SIZE]; // 定义电话号码表
int count = 0; // 记录电话号码表中的记录数
// 读取电话号码表文件,将记录存入phoneBook数组中
FILE *fp = fopen("phoneBook.txt", "r");
if (fp == NULL) {
printf("无法打开电话号码表文件!\n");
return 1;
}
while (fscanf(fp, "%s %s %s %s", phoneBook[count].name, phoneBook[count].id, phoneBook[count].address, phoneBook[count].number) != EOF) {
count++;
}
fclose(fp);
// 输入要查询的电话号码
char queryNumber[20];
printf("请输入要查询的电话号码:");
scanf("%s", queryNumber);
// 在电话号码表中查找对应的记录
int i;
for (i = 0; i < count; i++) {
if (strcmp(phoneBook[i].number, queryNumber) == 0) {
printf("姓名:%s\n", phoneBook[i].name);
printf("地址:%s\n", phoneBook[i].address);
break;
}
}
if (i == count) {
printf("未找到该电话号码对应的记录!\n");
}
return 0;
}
阅读全文