用c语言实现 一个通讯录(实现 增加、删除、查找、修改、显示、清空功能)
来源:互联网 发布:淘宝网店卖什么比较好 编辑:程序博客网 时间:2024/05/12 21:36
源程序头文件contact.h
#ifndef _CONTACT_H__#define _CONTACT_H__#define NAME_MAX 20#define SEX_MAX 5#define TELE_MAX 15#define ADDR_MAX 50#define PEO_MAX 1000#include <stdio.h>#include <string.h>#include <stdlib.h>typedef struct people{char name[NAME_MAX];char sex[SEX_MAX];int age;char tele[TELE_MAX];char addr[ADDR_MAX];}*pPeople;typedef struct contact{struct people dhb[PEO_MAX]; int count;}*pCon;void add_peo(pCon pcon);void del_peo(pCon pcon);void search_peo(pCon pcon);void modify_peo(pCon pcon);void show_peo(pCon pcon);void clear_peo(pCon pcon);#endif
</pre>源程序函数段实现<p></p><p></p><p></p><pre name="code" class="cpp">#include "contact.h"int find(pCon pcon,char * name){int i=0;while(i<pcon->count){if(strcmp(name,pcon->dhb[i].name)==0)//查找到匹配的姓名就输出ireturn i;i++;}return -1;}void add_peo(pCon pcon)//增加存储人函数{//判断if(pcon->count==PEO_MAX){printf("存储空间已满\n");return ;}printf("name:>");scanf("%s",(pcon->dhb[pcon->count]).name);printf("sex:>");scanf("%s",(pcon->dhb[pcon->count]).sex);printf("age:>");scanf("%d",&((pcon->dhb[pcon->count]).age));printf("tele:>");scanf("%s",(pcon->dhb[pcon->count]).tele);printf("addr:>");scanf("%s",(pcon->dhb[pcon->count]).addr);pcon->count++;}void del_peo(pCon pcon)//删除函数{char tmpName[NAME_MAX];int ret=0;printf("请输入你所要删除的姓名:>");scanf("%s",tmpName);ret=find(pcon,tmpName);if(-1 != ret){int j=ret;for(;j<pcon->count-1;j++){pcon->dhb[j]=pcon->dhb[j+1];//用后面的数据覆盖所要删除的数据}pcon->count--;//存储人数减少一位}else{printf("找不到所要删除的信息\n");}}void search_peo(pCon pcon)//查找函数{char tmpName[NAME_MAX];int ret=0;printf("请输入你所要查找的姓名:>");scanf("%s",tmpName);ret = find(pcon,tmpName);if(ret != -1){printf("%s\t%s\t%d\t%s\t%s\t\n",pcon->dhb[ret].name,pcon->dhb[ret].sex,pcon->dhb[ret].age,pcon->dhb[ret].tele,pcon->dhb[ret].addr);}else{printf("不存在所要查找的信息\n");}}void modify_peo(pCon pcon)//修改数据函数{char tmpName[NAME_MAX];int ret=0;printf("请输入你所要修改的姓名:>");scanf("%s",tmpName);ret = find(pcon,tmpName);if(-1 != ret)//找到修改姓名之后重新赋值{printf("name:>");scanf("%s",(pcon->dhb[ret]).name);printf("sex:>");scanf("%s",(pcon->dhb[ret]).sex);printf("age:>");scanf("%d",&((pcon->dhb[ret]).age));printf("tele:>");scanf("%s",(pcon->dhb[ret]).tele);printf("addr:>");scanf("%s",(pcon->dhb[ret]).addr);}}void show_peo(pCon pcon)//显示函数{int i;for(i=0;i<pcon->count;i++) //显示并打印说有联系人信息{printf("%s\t%s\t%d\t%s\t%s\t\n",pcon->dhb[i].name,pcon->dhb[i].sex,pcon->dhb[i].age,pcon->dhb[i].tele,pcon->dhb[i].addr);}}void clear_peo(pCon pcon)//清除所有联系人信息{pcon->count = 0;}
</pre><p></p><p>源程序主函数调用段</p><p></p><p></p><pre name="code" class="cpp">#include "contact.h"void show_menu(){printf("***************************\n");printf("* 1>add 2>del *\n");printf("* 3>search 4>modify *\n");printf("* 5>show 6>clear *\n");printf("***************************\n");}int main(){struct contact my_contact;int input=1;my_contact.count = 0;while(input){show_menu();printf("please input:>");scanf("%d",&input);switch(input)//判断并调用函数{case 1:{add_peo(&my_contact);system("cls");//调用清屏函数 break;}case 2:{del_peo(&my_contact);system("cls");//调用清屏函数break;}case 3:search_peo(&my_contact);break;case 4:{modify_peo(&my_contact);system("cls");//调用清屏函数break;}case 5:show_peo(&my_contact);break;case 6:clear_peo(&my_contact);break;default:break;}}return 0;}
增加联系人函数
void add_peo(pCon pcon)//增加存储人函数{//判断if(pcon->count==PEO_MAX){printf("存储空间已满\n");return ;}printf("name:>");scanf("%s",(pcon->dhb[pcon->count]).name);printf("sex:>");scanf("%s",(pcon->dhb[pcon->count]).sex);printf("age:>");scanf("%d",&((pcon->dhb[pcon->count]).age));printf("tele:>");scanf("%s",(pcon->dhb[pcon->count]).tele);printf("addr:>");scanf("%s",(pcon->dhb[pcon->count]).addr);pcon->count++;}
删除联系人函数
void del_peo(pCon pcon)//删除函数{char tmpName[NAME_MAX];int ret=0;printf("请输入你所要删除的姓名:>");scanf("%s",tmpName);ret=find(pcon,tmpName);if(-1 != ret){int j=ret;for(;j<pcon->count-1;j++){pcon->dhb[j]=pcon->dhb[j+1];//用后面的数据覆盖所要删除的数据}pcon->count--;//存储人数减少一位}else{printf("找不到所要删除的信息\n");}}
查找联系人函数段
void search_peo(pCon pcon)//查找函数{char tmpName[NAME_MAX];int ret=0;printf("请输入你所要查找的姓名:>");scanf("%s",tmpName);ret = find(pcon,tmpName);if(ret != -1){printf("%s\t%s\t%d\t%s\t%s\t\n",pcon->dhb[ret].name,pcon->dhb[ret].sex,pcon->dhb[ret].age,pcon->dhb[ret].tele,pcon->dhb[ret].addr);}else{printf("不存在所要查找的信息\n");}}
修改联系人函数段
void modify_peo(pCon pcon)//修改数据函数{char tmpName[NAME_MAX];int ret=0;printf("请输入你所要修改的姓名:>");scanf("%s",tmpName);ret = find(pcon,tmpName);if(-1 != ret)//找到修改姓名之后重新赋值{printf("name:>");scanf("%s",(pcon->dhb[ret]).name);printf("sex:>");scanf("%s",(pcon->dhb[ret]).sex);printf("age:>");scanf("%d",&((pcon->dhb[ret]).age));printf("tele:>");scanf("%s",(pcon->dhb[ret]).tele);printf("addr:>");scanf("%s",(pcon->dhb[ret]).addr);}}
void show_peo(pCon pcon)//显示函数{int i;for(i=0;i<pcon->count;i++) //显示并打印说有联系人信息{printf("%s\t%s\t%d\t%s\t%s\t\n",pcon->dhb[i].name,pcon->dhb[i].sex,pcon->dhb[i].age,pcon->dhb[i].tele,pcon->dhb[i].addr);}}
清空联系人函数段
void clear_peo(pCon pcon)//清除所有联系人信息{pcon->count = 0;}
0 0
- 用c语言实现 一个通讯录(实现 增加、删除、查找、修改、显示、清空功能)
- 【通讯录系统】:实现一个通讯录(可添加、删除、修改、查找、显示、清空、排序)
- 用C语言模拟实现一个通讯录,要求实现其添加、删除、修改、查找、显示和排序联系人信息的功能
- c语言实现通讯录,包括增加名字,删除信息,查找,修改,排序
- 创建通讯录实现(增,删,查,改,显示,清空)功能
- C语言实现链表的创建、增加、删除、查询、逆序、清空等基本操作
- 用c语言实现一个通讯录; 通讯录可以存储1000个人的信息,信息包括姓名、性别、年龄、电话、住址 提供方法: 1.添加联系人信息 2.删除指定联系人信息 3.查找指定联系人信息 4.修改指定联系&
- 创建一个学生系统,实现一下功能; * 1:增加学生 * 2:显示学生 * 3:修改学生 * 4:删除学生 * 5:查找学生 * 6:退出程序 * 请输入选择(
- 用C语言实现一个通讯录
- 【c语言】实现一个通讯录
- C语言单链表的建立,查找,添加,删除,修改功能实现
- 清空数据的方法(c语言实现)
- 汇编实现的简单的通讯录系统,有插入,修改,删除,打印,查找功能
- jqgrid 实现增加,删除,修改的功能
- FMDB增加修改删除功能的实现
- 【C语言】实现一个通讯录(一:静态的实现)
- 【C语言】实现一个通讯录(二:动态的实现)
- 【c语言】函数实现数组初始化,冒泡排序,现实,和清空功能
- 第六周——项目一深复制体验(一)
- 2014 蓝桥杯 预赛 c/c++ 本科B组 第七题:六角填数【暴力】or【DFS】
- Mecanim入门一:简单角色控制
- mac 下PyCharm运行报错问题解决
- Apple Watch发售在即 苹果门店大变脸
- 用c语言实现 一个通讯录(实现 增加、删除、查找、修改、显示、清空功能)
- ViewDragHelper几个方法的理解
- C# Server Socket
- 第六周阅读程序二
- 随笔-Animation-动画效果整理
- Log4j配置失效导致spring等框架一直打印DEBUG级别的日志
- SlidingMenu的用法
- YTUOJ-A Simple Question
- mvc与视图控制器作用分 uiviewcontroller的生命周期