标签:
<span style="font-size:18px;">头文件contact.h</span>
<span style="font-size:18px;"> </span>
<pre name="code" class="cpp"><span style="font-size:18px;">#include<string.h> #include<stdio.h> #ifndef __CONTACT_H__ #define __CONTACT_H__ #define MAX_NAME 20 #define MAX_SEX 10 #define MAX_TELE 12 #define MAX_ADDR 20 #define MAX_DHB 1000 typedef struct Peo<span style="white-space:pre"> </span>//结构体存储人的信息 { char name[MAX_NAME]; char sex[MAX_SEX]; int age; char tele[MAX_TELE]; char addr[MAX_ADDR]; }PEO; typedef struct Contact<span style="white-space:pre"> </span>//结构体包装的电话本 { PEO dhb[MAX_DHB]; int count; }PCON,*Pcon; Pcon pcon; void add_peo(Pcon pcon); void del_peo(Pcon pcon); void mod_peo(Pcon pcon); void sear_peo(Pcon pcon); void show_peo(Pcon pcon); void clear_peo(Pcon pcon); #endif</span>
<span style="font-size:18px;">源文件test.c</span>
<span style="font-size:18px;"> </span>
</pre><pre name="code" class="cpp"><span style="font-size:18px;">#include"contact.h" void print_menu() { printf("*************************\n"); printf("***1.add 2.del ***\n"); printf("***3.modify 4.search***\n"); printf("***5.show 6.clear ***\n"); printf("*************************\n"); } int main() { int input = 1; PCON con; con.count = 0; while (input) { print_menu(); printf("请选择> "); scanf("%d", &input); switch (input) { case 1: add_peo(&con); break; case 2: del_peo(&con); break; case 3: mod_peo(&con); break; case 4: sear_peo(&con); break; case 5: show_peo(&con); break; case 6: clear_peo(&con); break; default: break; } } return 0; }</span>
<span style="font-size:18px;"> </span>
<span style="font-size:18px;">源文件contact.c</span>
<span style="font-size:18px;"> </span>
<pre name="code" class="cpp"><span style="font-size:18px;">#include"contact.h" int find(char name[],Pcon pcon)<span style="white-space:pre"> </span>//实现查找一个人的信息的函数 { int i=0; for (i = 0; i < pcon->count; i++) { if (strcmp(name, pcon->dhb[i].name) == 0) return i; else return -1; } } void add_peo(Pcon pcon)<span style="white-space:pre"> </span>//实现增加一个人的信息函数 { if (MAX_DHB == pcon->count) { printf("电话本已满"); } printf("请输入名字:"); scanf("%s", pcon->dhb[pcon->count].name); printf("请输入性别:"); scanf("%s", pcon->dhb[pcon->count].sex); printf("请输入年龄:"); scanf("%d", &(pcon->dhb[pcon->count].age)); printf("请输入电话:"); scanf("%s", pcon->dhb[pcon->count].tele); printf("请输入地址:"); scanf("%s", pcon->dhb[pcon->count].addr); printf("添加成功!"); pcon->count++; } void del_peo(Pcon pcon)<span style="white-space:pre"> </span>//实现删除一个人的信息的函数 { int ret = 0; int i = 0; char name[MAX_NAME]; printf("请输入要删除的人的名字:"); scanf("%s", name); ret=find(name, pcon); if (ret == -1) printf("没有此人"); for (i = ret; i < pcon->count - 1; i++) { pcon->dhb[i] = pcon->dhb[i + 1]; } printf("删除成功!"); pcon->count --; } void mod_peo(Pcon pcon)<span style="white-space:pre"> </span>//实现修改一个人的信息的函数 { char name[MAX_NAME]; int ret = 0; printf("请输入要修改的人的名字:"); scanf("%s", name); ret=find(name, pcon); if (ret == -1) printf("没有此人"); else { printf("请输入名字:"); scanf("%s", pcon->dhb[ret].name); printf("请输入性别:"); scanf("%s", pcon->dhb[ret].sex); printf("请输入年龄:"); scanf("%d", &(pcon->dhb[ret].age)); printf("请输入电话:"); scanf("%s", pcon->dhb[ret].tele); printf("请输入地址:"); scanf("%s", pcon->dhb[ret].addr); printf("修改成功!"); } } void sear_peo(Pcon pcon)<span style="white-space:pre"> </span>//实现查找一个人的信息函数 { char name[MAX_NAME]; int ret = 0; printf("请输入要查找的人的名字:"); scanf("%s", name); ret=find(name, pcon); if (ret == -1) printf("查无此人"); printf("%20s\t", pcon->dhb[ret].name); printf("%10s\t", pcon->dhb[ret].sex); printf("%20d\t", pcon->dhb[ret].age); printf("%20s\t", pcon->dhb[ret].tele); printf("%20s\n", pcon->dhb[ret].addr); } void show_peo(Pcon pcon)<span style="white-space:pre"> </span>//实现显示所有人信息的函数 { int i = 0; for (i = 0; i < pcon->count; i++) { printf("%5s", pcon->dhb[i].name); printf("%5s", pcon->dhb[i].sex); printf("%5d", pcon->dhb[i].age); printf("%15s", pcon->dhb[i].tele); printf("%8s\n", pcon->dhb[i].addr); } } void clear_peo(Pcon pcon)<span style="white-space:pre"> </span>//实现清空所有人信息的函数 { pcon->count = 0; }</span>
标签:
原文地址:http://blog.csdn.net/kkmdmcgxi/article/details/45828715