標籤:
<span style="font-size:18px;">#include<stdio.h>#include"contact.h"void print_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(){PCON pco;int input=1;pco.count=0;while(input){print_menu();printf("請選擇:");scanf("%d",&input);switch(input){case 1:add_peo(&pco);break;case 2:del_peo(&pco);break;case 3:search(&pco);break;case 4:modify(&pco);break;case 5:show(&pco);break;case 6:clear(&pco);break;default :break;}}return 0;}</span>
<span style="font-size:18px;">#ifndef __CONTACT_H#define __CONTACT_H_#define NAME_LEN 20#define SEX_LEN 5#define TELE_LEN 12#define ADDR_LEN 20#define MAX_PEO 1000typedef struct Peo{char name[NAME_LEN];int age;char sex[SEX_LEN];char tele[TELE_LEN];char addr[ADDR_LEN];}PEO,*PPEO;typedef struct Contact{PEO dhb[MAX_PEO];//儲存人的資訊int count;//記錄有效人的個數}PCON,*Pcon;void add_peo(Pcon pcon);void del_peo(Pcon pcon);void search(Pcon pcon);void modify(Pcon pcon);void show(Pcon pcon);void clear(Pcon pcon);#endif</span>
<span style="font-size:18px;">#include<string.h>#include"contact.h"int find(Pcon pcon){int i=0;char name[NAME_LEN];printf("請輸入姓名:");scanf("%s",name);for(i=0;i<=pcon->count;i++){if(strcmp(name,pcon->dhb[i].name)==0)return i;} return -1;}void add_peo(Pcon pcon){if(pcon->count>MAX_PEO)printf("電話本已滿");else{printf("姓名:");scanf("%s",pcon->dhb[pcon->count].name);printf("年齡:");scanf("%d",&(pcon->dhb[pcon->count].age));printf("性別:");scanf("%s",pcon->dhb[pcon->count].sex);printf("電話:");scanf("%s",pcon->dhb[pcon->count].tele);printf("住址:");scanf("%s",pcon->dhb[pcon->count].addr);}pcon->count++;printf("添加成功!")}void del_peo(Pcon pcon){int i=0;int ret=find(pcon);if(ret!=-1){for(i=ret;i<pcon->count-1;i++){pcon->dhb[i]=pcon->dhb[i+1];}pcon->count--;}elseprintf("未找到要刪除的人");printf("刪除成功!");}void search(Pcon pcon){int ret=find(pcon);if(ret!=-1){printf("%10s\t",pcon->dhb[ret].name);printf("%10d\t",pcon->dhb[ret].age);printf("%10s\t",pcon->dhb[ret].sex);printf("%10s\t",pcon->dhb[ret].tele);printf("%10s\t",pcon->dhb[ret].addr);}elseprintf("未找到此人");}void modify(Pcon pcon){int ret;ret=find(pcon);if(ret!=-1){printf("姓名:");scanf("%s",pcon->dhb[ret].name);printf("年齡:");scanf("%d",&(pcon->dhb[ret].age));printf("性別:");scanf("%s",pcon->dhb[ret].sex);printf("電話:");scanf("%s",pcon->dhb[ret].tele);printf("住址:");scanf("%s",pcon->dhb[ret].addr);}elseprintf("未找到要修改的人");}void show(Pcon pcon){int i=0;for(i=0;i<pcon->count;i++){printf("%10s\t",pcon->dhb[i].name);printf("%10d\t",pcon->dhb[i].age);printf("%10s\t",pcon->dhb[i].sex);printf("%10s\t",pcon->dhb[i].tele);printf("%10s\t",pcon->dhb[i].addr);}}void clear(Pcon pcon){pcon->count=0;}</span>
【C語言】實現一個簡單的通訊錄