C语言通讯录管理系统源程序

更新时间:2023-12-15 00:46:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

#include #include #include

typedef struct { char score; /*编号*/ char name[10]; /*姓名*/ char num[15]; /*号码*/ char email[20]; /*邮箱*/ char age[8]; /*年龄*/ char adds[20]; /*住址*/ }Person;

Person pe[80]; int menu_select() { char c; do{ system(\ printf(\通讯录***** \\n\ printf(\┌───────┐\\n\ printf(\│ 1. 添加记录 │\\n\ printf(\│ 2. 显示记录 │\\n\ printf(\│ 3. 删除记录 │\\n\ printf(\│ 4. 查询记录 │\\n\ printf(\│ 5. 修改记录 │\\n\ printf(\│ 6. 保存记录 │\\n\ printf(\│ 0. 退出程序 │\\n\ printf(\└───────┘\\n\ printf(\请您选择(0-6):\ c=getchar(); }while(c<'0'||c>'6'); return(c-'0'); }

int Input(Person per[],int n) { int i=0; char sign,x[10]; while(sign!='n'&&sign!='N') { printf(\编号:\ scanf(\

printf(\姓名:\ scanf(\ printf(\年龄:\ scanf(\ printf(\电话号码:\ scanf(\ printf(\通讯住址:\ scanf(\ printf(\电子邮箱:\ scanf(\ gets(x); printf(\是否继续添加?(Y/N)\ scanf(\ i++; } return(n+i); }

void Display(Person per[],int n) { int i; printf(\ /*格式*/ printf(\编号 姓名 年龄 电话号码 通讯地址 电子邮箱\\n\ printf(\ for(i=1;i1&&i==0) { printf(\ printf(\ system(\ printf(\ } } printf(\ system(\ }

int Delete_a_record(Person per[],int n) { char s[20]; int i=0,j; printf(\请输入想删除记录中的名字:\ scanf(\ while(strcmp(per[i].name,s)!=0&&i

void Query_a_record(Person per[],int n) { int m; printf(\请选择查询方式:\\n\ printf(\┌──────┐\\n\ printf(\│1------姓名 │\\n\ printf(\│2------电话 │\\n\ printf(\│3------地址 │\\n\ printf(\│4------返回 │\\n\ printf(\└──────┘\\n\ printf(\请选择:\ scanf(\

while(m!=1&&m!=2&&m!=3&&m!=4) { printf(\输入错误,请重新选择:\ scanf(\ }

if(m==1) { char s[20]; int i=0; printf(\请输入想查询的姓名:\ scanf(\ while(strcmp(per[i].name,s)!=0&&i

if(m==2) { char s[20]; int i=0; printf(\请输入想查询的电话:\ scanf(\ while(strcmp(per[i].num,s)!=0&&i

}

printf(\此人编号: %d\\n\printf(\此人姓名: %s\\n\printf(\此人年龄: %s\\n\ printf(\通讯地址: %s\\n\printf(\电子邮箱: %s\\n\

if(m==3) { char s[20]; int i=0;

printf(\请输入想查询的地址:\ scanf(\ while(strcmp(per[i].adds,s)!=0&&i

void Change(Person per[],int n) { char s[20]; int i=0; printf(\请输入想修改的记录中的名字:\ scanf(\ while(strcmp(per[i].name,s)!=0&&i

void WritetoText(Person per[],int n) { int i=0; FILE *fp; /*定义文件指针*/ char filename[20]; /*定义文件名*/ printf(\保存到文件\\n\ /*输入文件名*/ printf(\请输入所保存的文件名:\ scanf(\ if((fp=fopen(filename,\ { printf(\无法打开文件\\n\ system(\ return; } fprintf(fp,\通讯录******************************************\\n\ fprintf(fp,\编号 姓名 年龄 电话号码 通讯地址 电子邮箱\\n\ fprintf(fp,\ while(i

void main() /*主函数*/ { int n=0; for(;;) { switch(menu_select()) { case 1: printf(\添加记录到通讯录\\n\ /*添加记录*/ n=Input(pe,n);

break;

case 2:

printf(\ 通讯录记录表\\n\ /*显示记录*/ Display(pe,n); break;

case 3:

printf(\从通讯录中删除记录\\n\ n=Delete_a_record(pe,n); printf(\

system(\ break;

case 4:

printf(\在通讯录中查找记录\\n\ Query_a_record(pe,n); printf(\

system(\ break;

case 5:

printf(\修改通讯录中的记录\\n\ Change(pe,n); printf(\

system(\ break;

case 6:

printf(\保存功能\\n\ WritetoText(pe,n); printf(\

system(\ break;

case 0:

printf(\谢谢使用,再见!\\n\ printf(\ system(\ exit(0); }

}

}

/*删除记录*/ /*查找记录*/ /*修改数据*/

/*保存数据*/

/*结束程序*/

本文来源:https://www.bwwdw.com/article/sfm5.html

Top