您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 市场营销 > 好友管理系统(c语言课程设计)
#includestdio.h#includestring.h#includestdlib.h#includeconio.h//conio.h主要做图形图像,例如说设置背景色的函数,字体颜色的函数、输出格式的函数等#defineN30typedefstructhaoyou/*typedef是类型定义的意思。typedefstruct是为了使用这个结构体方便。具体区别在于:若structnode{}这样来定义结构体的话。在申请node的变量时,需要这样写,structnoden;若用typedef,可以这样写,typedefstructnode{}NODE;。在申请变量时就可以这样写,NODEn;区别就在于使用时,是否可以省去struct这个关键字*/{charnum[20];charname[10];charadress[50];charQQ[15];chartel[15];}haoyou;voidmenu();intreads(haoyoustu[N]);//读取voidsave(haoyoustu[N],intn);//保存voidadd();//添加voiddel();//删除voidquery();//查询voidchange();//修改voidshow();//信息显示voidmain(){intn;while(1)//while(1)其中1代表一个常量表达式,他永远不会等于0。所以,循环会一直执行下去。除非你设置break等类似的跳出循环语句循环才会中止{menu();printf(→→→→→→→→→→→→→→→→→→→→→\n);printf(您现在看到的是xxx的通讯录\n);printf(←←←←←←←←←←←←←←←←←←←←←\n);printf(→→→→→→→→→→→→→→→→→→→→→\n);printf(请输入您要选择的操作编号,按回车键确认:\n);printf(←←←←←←←←←←←←←←←←←←←←←\n);scanf(%d,&n);switch(n){case1:add();break;case2:show();break;case3:del();break;case4:change();break;case5:query();break;case0:exit(0);default:printf(***********************************\n);printf(输入错误,请输入列表中存在的编号\n);printf(***********************************\n);}printf(*************\n);printf(按任意键返回\n);printf(*************\n);getch();//getch();或ch=getch();用getch();会等待你按下任意键,再继续执行下面的语句;用ch=getch();会等待你按下任意键之后,把该键字符所对应的ASCII码赋给ch,再执行下面的语句。fflush(stdin);//用来清空输入缓存,以便不影响后面输入的东西}}voidmenu(){system(color3f);//颜色system(cls);//清屏printf(***********************xxx好友信息管理系统*******************\n);printf(**1添加好友信息**\n);printf(**2显示好友信息**\n);printf(**3删除好友信息**\n);printf(**4更改好友信息**\n);printf(**5查询好友信息**\n);printf(**0退出**\n);printf(*****************************************************************\n);}intreads(haoyoustu[N])//读取好友文件中的内容{FILE*fp;inti=0;if((fp=fopen(d:\\haoyou.txt,r))==NULL){printf(文件打开失败!\n);return0;}else{for(i=0;!feof(fp);i++)fscanf(fp,%s%s%s%s%s\n,stu[i].num,stu[i].name,stu[i].adress,stu[i].QQ,stu[i].tel);}fclose(fp);returni;}voidsave(haoyoustu[N],intn)//好友信息改变后更新文件{FILE*fp;inti=0;if((fp=fopen(d:\\haoyou.txt,w))==NULL){printf(文件打开失败!\n);return;}else{for(i=0;in;i++)fprintf(fp,%s%s%s%s%s\n,stu[i].num,stu[i].name,stu[i].adress,stu[i].QQ,stu[i].tel);}fclose(fp);}voidadd()/*添加好友信息*/{FILE*fp;intn,i;haoyoustu;if((fp=fopen(d:\\haoyou.txt,a))==NULL)//如果文件已经存在,可以追加好友信息{if((fp=fopen(d:\\haoyou.txt,w))==NULL)//文件不存在时,创建新文件,输入好友信息{printf(文件打开失败!\n);return;}}printf(**************************************\n);printf(请输入要添加的好友数量,按回车键确认:\n);printf(**************************************\n);scanf(%d,&n);for(i=1;i=n;i++){printf(**************************************************************\n);printf(请输入第%d个好友的编号、姓名,用空格分开,并按回车键确认:\n,i);printf(**************************************************************\n);scanf(%s%s,stu.num,stu.name);printf(********************************************************************\n);printf(请输入第%d个好友的地址、QQ号和电话,用空格分开,并按回车键确认:\n,i);printf(********************************************************************\n);scanf(%s%s%s,stu.adress,stu.QQ,stu.tel);fprintf(fp,%s%s%s%s%s\n,stu.num,stu.name,stu.adress,stu.QQ,stu.tel);}fclose(fp);}voidshow()//好友信息显示函数{haoyoustu[N];inti,n;n=reads(stu);printf(**********************所有的好友信息如下*******************\n\n);printf(序号编号姓名地址QQ号电话\n);printf(*************************************************************\n);for(i=0;in;i++)printf(\n%3d%s%s%s%s%s\n,i+1,stu[i].num,stu[i].name,stu[i].adress,stu[i].QQ,stu[i].tel);printf(*************************************************************\n);getch();}voiddel()/*好友信息删除函数*/{haoyoustu[N];charnumber[20];intn,i,j;n=reads(stu);printf(********************************************\n);printf(请输入要删除信息的好友编号,按回车键确认:\n);printf(********************************************\n);scanf(%s,number);for(i=0;in;i++)if(strcmp(number,stu[i].num)==0)break;if(i=n){printf(没有找到该好友信息!\n);return;}else{for(j=i+1;jn;j++)stu[j-1]=stu[j];}save(stu,n-1);printf(删除成功!\n);}voidchange()//好友信息更改{haoyoustu[N];intn,i;charnumber[20];printf(******************************************\n);printf(请输入要更改信息的好友编号,按回车键确认:\n);printf(******************************************\n);scanf(%s,number);n=reads(stu);for(i=0;in;i++)if(strcmp(number,stu[i].num)==0)break;if(i=n){printf(无此好友信息!);return;}printf(**************************************************************\n);printf(请输入更改后好友的编号,姓名,地址,QQ号,电话,按回车键确认:\n);printf(**************************************************************\n);scanf(%s%s%s%s%s,stu[i].num,stu[i].name,stu[i].adress,stu[i].QQ,stu[i].tel);save(stu,n);}voidquery()//按编号对好友信息查询{haoyoustu[N];charnumber[20];inti,n;n=reads(stu);printf(****************************************\n);printf(请输入待查询的好友编号,按回车键确认:\n);printf(****************************************\n);scanf(%s,number);for(i=0;in;i++)if(strcmp(number,stu[i].num)==0)break;if(i=n){printf(没有找到该好友信息!\n);return;}else{printf(*************************************************************\n);printf(编号姓名地址QQ号电话\n);printf(*************************************************************\n);printf(\n%s%s%s%s%s\n,stu[i].num,stu[i].name,stu[i].adress,stu[i].QQ,stu[i].tel);printf(**********************************
本文标题:好友管理系统(c语言课程设计)
链接地址:https://www.777doc.com/doc-4697431 .html