100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > c语言手机通讯录退出程序 通讯录小程序(C/C++)C语言练习小程序

c语言手机通讯录退出程序 通讯录小程序(C/C++)C语言练习小程序

时间:2021-06-25 09:41:16

相关推荐

c语言手机通讯录退出程序 通讯录小程序(C/C++)C语言练习小程序

实现一个通讯录;

通讯录可以用来存储1000个人的信息,每个人的信息包括:

姓名、性别、年龄、电话、住址

实现功能:

1.添加联系人信息

2.删除指定联系人信息

3.查找指定联系人信息

4.修改指定联系人信息

5.显示所有联系人信息

6.清空所有联系人

7.以名字排序所有联系人

程序说明:

分模块实现

Phonelist.h 头文件——存放函数声明

fun.c ——函数实现

test.c——主函数

!Phonelist.h!//Phonelist.h

#pragmaonce

#ifndef__ARROPT_H__

#define__ARROPT_H__

typedefstructPHONE

{

charName[10];

intAge;

charSex[3];//男/女

charTele[13];

charAddress[20];

//structPHONE*next;

}PHONE,*Phone;

voidADD(PHONE*p);//添加

intDEL(Phonep,char*);//删除

voidSEEK(Phonep,char*);//查找

voidREVISE(Phonep,char*);//修改

voidSHOW(Phonep);//显示

voidFREE_ALL(Phonep);//清空

voidSORT(Phonep,constsize_t);//用快排排序必须将结构体第一个成员设为Name,才可以实现

voidmenu();

#endif//__ARROPT_H__

fun.c ——函数实现//fun.c

#include

#include

#include

#include"Phonelist.h"

#defineMAX1000//通讯录最大存储人数

//*****************添加**************

voidADD(Phonep)

{

printf("请输入要录入联系人的姓名\n");

scanf_s("%s",p->Name,10);//用scanf_s函数实现字符串的输入

printf("请输入要录入联系人的性别(男/女)\n");

scanf_s("%s",p->Sex,3);

printf("请输入要录入联系人的年龄\n");

scanf_s("%d",&p->Age);

printf("请输入要录入联系人的电话\n");

scanf_s("%s",p->Tele,13);

printf("请输入要录入联系人的住址\n");

scanf_s("%s",p->Address,20);

}

//****************删除**************************

intDEL(Phonep,char*name)

{

inti=0;

inttmp=0;

Phonej=p;

while(i++

{

if(strcmp(j->Name,name)==0)

{

j->Age=0;

tmp=1;

break;

}

j++;

}

if(tmp==1)

{

printf("%s信息删除成功!\n",name);

return1;

}

else

{

printf("%s信息删除失败,无此人!\n",name);

return0;

}

}

//*********查找*************

voidshow_one(Phonej)

{

printf("Name:%s",j->Name);

printf("Age:%d",j->Age);

printf("Tele:%s",j->Tele);

printf("Sex:%s",j->Sex);

printf("Address:%s\n",j->Address);

}

voidSEEK(Phonep,char*name)

{

inti=0;

inttmp=0;

Phonej=p;

while(i++

{

if(strcmp(j->Name,name)==0)

{

tmp=1;

break;

}

j++;

}

if(tmp==1)

{

printf("%s信息存在!\n",name);

show_one(j);

}

else

printf("%s信息查找失败,无此人!\n",name);

}

//***********修改**********

voidREVISE(Phonep,char*name)

{

inti=0;

inttmp=0;

Phonej=p;

while(i++

{

if(strcmp(j->Name,name)==0)

{

ADD(j);

tmp=1;

break;

}

j++;

}

if(tmp==1)

printf("%s信息修改成功!\n",name);

else

printf("%s信息修改失败,无此人!\n",name);

}

//************显示所有联系人********

voidSHOW(Phonep)

{

Phonej=p;

inti=0;

intcount=0;

while(i++

{

if(j->Age!=0)

{

show_one(j);

count++;

}

j++;

}

if(0==count)

printf("通讯录里还没有人,请选择1,添加您的好友\n");

}

//************清空****************

voidFREE_ALL(Phonep)

{

Phonej=p;

inti=0;

while(iAge!=0)

{

j->Age=0;

j++;

}

printf("通讯录已清空!\n");

}

//*************以名字排序所有联系人********

voidSORT(Phonep,constsize_tnum)

{

qsort(p,num,sizeof(*p),strcmp);//用快排排序必须将结构体第一个成员设为Name,才可以实现

}

//***************菜单******************

voidmenu()

{

printf("***********************************************\n");

printf("*MENU*\n");

printf("***********************************************\n");

printf("*1.添加联系人信息*\n");

printf("*2.删除指定联系人信息*\n");

printf("*3.查找指定联系人信息*\n");

printf("*4.修改指定联系人信息*\n");

printf("*5.显示所有联系人信息*\n");

printf("*6.清空所有联系人*\n");

printf("*7.以名字排序所有联系人*\n");

printf("*0.退出*\n");

printf("***********************************************\n");

printf("***********************************************\n");

printf("请输入选择序号:->");

}

test.c——主函数#include

#include

#include

#include"Phonelist.h"

#defineMAX1000

PHONEPEO[MAX]={0};

intmain()

{

intchoose=1;

inti=0;

intret=0;

while(choose)

{

menu();

scanf_s("%d",&choose);

charname[10];

if(choose>=0&&choose

{

switch(choose)

{

i=0;

case1:

if(PEO[i].Age==0&&i

ADD(&PEO[i++]);

break;

case2:

printf("请输入要删除学生的名字\n");

scanf_s("%s",name,10);

ret=DEL(PEO,name);

if(ret==1)

i--;

break;

case3:

printf("请输入要查找学生的名字\n");

scanf_s("%s",name,10);

SEEK(PEO,name);

break;

case4:

printf("请输入要修改学生的名字\n");

scanf_s("%s",name,10);

REVISE(PEO,name);

break;

case5:

SHOW(PEO);

break;

case6:

FREE_ALL(PEO);

break;

case7:

SORT(PEO,i-1);

printf("排序结果:\n");

SHOW(PEO);

break;

default:

break;

}

}

}

system("pause");

return0;

}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。