C语言实现简单的通讯录
来源:互联网 发布:网络推广专员职责 编辑:程序博客网 时间:2024/05/22 00:16
实现一个通讯录;
通讯录可以用来存储1000个人的信息,每个人的信息包括:
姓名、性别、年龄、电话、住址
提供方法:
1. 添加联系人信息
2. 删除指定联系人信息
3. 查找指定联系人信息
4. 修改指定联系人信息
5. 显示所有联系人信息
通讯录可以用来存储1000个人的信息,每个人的信息包括:
姓名、性别、年龄、电话、住址
提供方法:
1. 添加联系人信息
2. 删除指定联系人信息
3. 查找指定联系人信息
4. 修改指定联系人信息
5. 显示所有联系人信息
6.清空所有联系人
/***************************************** File Name : contacts.h* Creat Data : 2015.3.17* Author : WK*****************************************/#ifndef __CONTACTS_H__#define __CONTACTS_H__#include <stdio.h>#include <string.h>#include <stdlib.h>#define MAX 1000#define NAME_LENGTH 20#define SEX_LENGTH 5#define TELE_LENGTH 20#define ADDR_LENGTH 30struct PeopleInfo{char name[NAME_LENGTH];char sex[SEX_LENGTH];int age;char tele[TELE_LENGTH];char addr[ADDR_LENGTH];};struct Contacts{struct PeopleInfo person[MAX];int user_count;};typedef struct Contacts *pContacts;int add_mess(pContacts pcon);int dele_mess(pContacts pcon);int clear_mess(pContacts pcon);int find_mess(pContacts pcon);int modify_mess(pContacts pcon);void show_mess(pContacts pcon);#endif
/***************************************** File Name : contact.c* Creat Data : 2015.3.17* Author : WK*****************************************/#include "contacts.h"int find_entry(pContacts pcon)//找到该人信息所存储的数组下标{int i = 0 ;char name[NAME_LENGTH];printf("Please input name:");scanf("%s",name);for(i = 0;i < pcon->user_count;i++){if(strcmp(pcon->person[i].name ,name) == 0){return i;}}return -1;}int add_mess(pContacts pcon){if(pcon->user_count == MAX){printf("Telephone book is full!\n");return -1;}printf("Please input name:");scanf("%s",pcon->person[pcon->user_count].name);printf("Please input sex:");scanf("%s",pcon->person[pcon->user_count].sex);printf("Please input age:");scanf("%d",&(pcon->person[pcon->user_count].age));printf("Please input tele:");scanf("%s",pcon->person[pcon->user_count].tele);printf("Please input addr:");scanf("%s",pcon->person[pcon->user_count].addr);pcon->user_count++;//人数加一return 1;}int dele_mess(pContacts pcon){int i = 0;int ret = find_entry(pcon);if(ret != -1){for(i = ret;i < pcon->user_count-1;i++)//注意此处要照顾到i+1,当i=user_count-1-1时,i+1=user_count,否则就越界了{pcon->person[i] = pcon->person[i+1];}pcon->user_count--;//人数减一return 1;}else{printf("not exist!\n");return -1;}}int clear_mess(pContacts pcon){pcon->user_count = 0;return 1;}int find_mess(pContacts pcon){int ret = find_entry(pcon);if(ret != -1){printf("name:%s\n",pcon->person[ret].name);printf("sex:%s\n",pcon->person[ret].sex);printf("age:%d\n",pcon->person[ret].age);printf("tele:%s\n",pcon->person[ret].tele);printf("addr:%s\n",pcon->person[ret].addr);return 1;}else{printf("not exist!\n");return -1;}}int modify_mess(pContacts pcon){int ret = find_entry(pcon);if(ret != -1){printf("Please input name:");scanf("%s",pcon->person[ret].name);printf("Please input sex:");scanf("%s",pcon->person[ret].sex);printf("Please input age:");scanf("%s",pcon->person[ret].age);printf("Please input tele:");scanf("%s",pcon->person[ret].tele);printf("Please input addr:");scanf("%s",pcon->person[ret].addr);return 1;}else{printf("not exist!\n");return -1;}}void show_mess(pContacts pcon){int i = 0;printf("\tname\tsex\t\tage\t\ttele\t\t\taddr\n");for(i = 0;i < pcon->user_count;i++){printf("%10s\t",pcon->person[i].name);printf("%5s\t", pcon->person[i].sex);printf("%10d\t",pcon->person[i].age);printf("%15s\t",pcon->person[i].tele);printf("%20s\t",pcon->person[i].addr);}printf("\n");}
/***************************************** File Name : main.c* Creat Data : 2015.3.17* Author : WK*****************************************/#include "contacts.h"int main(){int num=0;struct Contacts person;person.user_count = 0; printf(" welcome using\n"); printf("\n"); printf(" The telephone_Book Management System \n"); printf("\n"); printf(" *******************Menu********************\n"); printf(" * 1 add person's message *\n"); printf(" ** 2 delete person's message *\n"); printf(" *** 3 find person's message *\n"); printf(" **** 4 modify person's message *\n"); printf(" ***** 5 show all of person's message *\n"); printf(" ****** 6 clear all of person's message *\n"); printf(" !!!!!!! 0 quit *\n"); printf(" *******************************************\n"); while(1) { printf("please input a number which is you want to operate: "); scanf("%d",&num); switch(num) { case 1: add_mess( &person); break; case 2: dele_mess( &person); break; case 3: find_mess( &person); break; case 4: modify_mess( &person); break; case 5: show_mess(&person); break; case 6: clear_mess( &person); break; case 0: printf("Dear! Thanks for using\n"); break; default: printf("input error"); break; } }return 0;}
0 0
- C语言实现的简单通讯录例子
- C语言实现简单的通讯录
- 【C语言】实现一个简单的通讯录
- C语言实现简单的电子通讯录
- C语言实现简单通讯录
- c语言实现简单通讯录
- C语言 简单的通讯录
- C语言 使用结构体实现简单的通讯录
- C语言实现简单的电子通讯录2
- 用C语言实现简单通讯录
- C语言实现简单电子通讯录
- 简单C语言通讯录的制作
- c语言实现----通讯录
- C语言实现通讯录
- C语言实现通讯录
- c语言实现通讯录
- C语言实现通讯录
- C语言实现的通讯录例子
- Python 编码风格
- 项目1—旱冰场造价
- abc
- GCD介绍: 基本概念和Dispatch Queue
- 图片轮播的手写代码
- C语言实现简单的通讯录
- JSP/SERVLET入门教程--Servlet 使用入门
- 我的骑行
- Quick-Tip: Linux NAT in Four Steps using iptables
- Linux负载均衡软件LVS之二(安装篇)
- servlet/filter/listener/interceptor区别与联系
- IOS 学习笔记69- Animation温习系列一
- mac或者linux下查看图片规格
- Android Actionar overflow 不显示的问题