版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 信息科学与工程学院课程设计报告书课程名称: c程序课程设计 班 级: 自动化2010级1002班 学 号: 201004134061 课程设计报告书(一) 需求分析 设计题目:通讯录管理系统 设计要求:1.建立通讯录信息,信息至少包含编号、姓名、年龄、电话、通讯地址、电子邮箱等;2.能够提供添加、删除和修改通讯录信息的功能,并给出确认是否保存或删除记录的提示信息;3.能够提供按姓名或电话等查询并显示相应记录信息;4.将通讯录保存在文件中;5.能够按表格方式输出通讯录信息。系统功能需求分析: 包括添加,显示,查询,修改,删除,保存,退出等功能(二)概要设计 整体设计框架:通讯录添加显示查询修改
2、删除保存退出(三)详细设计 主要功能模块的算法设计思路及对应的工作流程图: 1添加模块: 2.显示模块: 3查询模块4. 修改模块 5. 删除模块6. 保存模块 (四)主要源程序代码#include <stdio.h>#include <stdlib.h>#include <string.h>#include <conio.h> 控制台输入输出struct contacks 定义通讯录结构体char name100; char num100; char sex100; char age100; char tel100; char address1
3、00; char e_mail100; con100;int b=0;void add(); 声明添加函数void show(); 声明显示函数void search(); 声明查询函数void correct(); 声明修改函数void del(); 声明删除函数 void save(); 声明保存函数void main() 主函数输出选择菜单system("cls"); int a; char i='1'while(a!=0)printf("tn");printf("t n");printf("t n&q
4、uot;);printf("t 欢迎使用通信录管理系统 n");printf("t n");printf("t n");printf("t no.1 添加通信录信息 n");printf("t n");printf("t no.2 显示通信录信息 n");printf("t n");printf("t no.3 查询通信录信息 n");printf("t n");printf("t no.4 修改通信录信息
5、 n");printf("t n");printf("t no.5 删除通讯录信息 n");printf("t n");printf("t no.6 保存通讯录 n");printf("t n");printf("t no.0 退出系统 n");printf("t n");printf("t n");printf("tn");printf("n 请选择(0-6):");scanf(&qu
6、ot;%d", &a);switch(a)case 0:exit(0);break;case 1:add(); break;case 2:show();break;case 3:search(); break;case 4:correct(); break;case 5:del();break;case 6:save();break;default:printf(" 您的输入有误!n");i=getchar();void add() 定义添加函数char ch100;system("cls");printf("n 请输入相关联
7、系人的信息:n");printf("n 姓名: ");scanf("%s",);printf("n 编号:");scanf("%s",conb.num);printf("n 性别:");scanf("%s",conb.sex);printf("n 年龄:");scanf("%s",conb.age);printf("n 电话:");scanf("%s",conb.tel
8、);printf("n 地址:");scanf("%s",conb.address);printf("n e_mail:");scanf("%s",conb.e_mail);b+;printf("nn 您的信息输入已完成,输入y继续添加,输入任意键返回: ");scanf("%s",ch);system("cls");if(strcmp("y",ch)=0|strcmp("y",ch)=0)add ();elsema
9、in();void show() 定义显示函数 system("cls");int i;char a100;for(i=0;i<b;i+) printf("n 姓名:%sn 编号:%sn 性别:%sn 年龄:%sn 电话:%sn 地址:%sn 电子邮件:%sn ",,coni.num,coni.sex,coni.age,coni.tel,coni.address,coni.e_mail); printf("nn 以上是您所输入的信息,输入y以表格显示,输入任意键返回:");scanf("%s"
10、;,a);if(strcmp("y",a)=0|strcmp("y",a)=0)system("cls");printf("nn"); printf(" 姓名 编号 性别 年龄 电话 地址 电子邮件 "); for(i=0;i<b;i+) printf("");printf(" %-9s%-9s%-9s%-9s%-12s%-12s%-12s ",,coni.num,coni.sex,coni.age,coni.tel,coni.ad
11、dress,coni.e_mail); printf("");printf("nn 请按任意键返回主界面:");getch(); main(); elsemain();printf("nn 以上是您所输入的信息,请按任意键返回主界面:");getch(); main(); void search() 定义查询函数system("cls");int i,k=1;char a100;printf("nn 请输入您想要查询的方式:nn");printf(" no.1 按姓名查找nn"
12、;);printf(" no.2 按编号查找nn");printf(" no.3 按电话查找nn");printf(" no.4 返回主菜单nn");printf("n 请输入1-4:");scanf("%s",a);if(strcmp(a,"1")=0)system("cls");printf("nn 请输入姓名:");scanf("%s",a);for(i=0;i<b;i+)if(strcmp(a,coni
13、.name)=0)printf("nn 姓名:%sn 编号:%sn 性别:%sn 年龄:%sn 电话:%sn 地址:%sn 电子邮件:%snn ",,coni.num,coni.sex,coni.age,coni.tel,coni.address,coni.e_mail);printf("nn 输入y继续查找,输入任意键返回: ");scanf("%s",a);if(strcmp("y",a)=0|strcmp("y",a)=0)search();elsemain(); k=0
14、;if(k)printf("nn 对不起,您所查找的联系人不存在,请按任意键返回");getch();search();else if(strcmp(a,"2")=0)system("cls");printf("nn 请输入编号:");scanf("%s",a);for(i=0;i<b;i+)if(strcmp(a,coni.num)=0)printf("nn 姓名:%sn 编号:%sn 性别:%sn 年龄:%sn 电话:%sn 地址:%sn 电子邮件:%snn ",c
15、,coni.num,coni.sex,coni.age,coni.tel,coni.address,coni.e_mail);printf("nn 输入y继续查找,输入任意键返回: ");scanf("%s",a);if(strcmp("y",a)=0|strcmp("y",a)=0)search();elsemain(); k=0;if(k)printf("nn 对不起,您所查找的联系人不存在,请按任意键返回");getch();search();else if(strcmp(
16、a,"3")=0)system("cls");printf("nn 请输入电话:");scanf("%s",a);for(i=0;i<b;i+)if(strcmp(a,coni.tel)=0)printf("nn 姓名:%sn 编号:%sn 性别:%sn 年龄:%sn 电话:%sn 地址:%sn 电子邮件:%snn ",,coni.num,coni.sex,coni.age,coni.tel,coni.address,coni.e_mail);printf("n
17、n 输入y继续查找,输入任意键返回: ");scanf("%s",a);if(strcmp("y",a)=0|strcmp("y",a)=0)search();elsemain(); k=0;if(k)printf("nn 对不起,您所查找的联系人不存在,请按任意键返回");getch();search();else if(strcmp(a,"4")=0)system("cls");main();else printf("nn 您的输入有误,请按任意键返回
18、");getch();search();void correct() 定义修改函数 system("cls");char q100;int i,k=1;printf("nn 请输入你想更改的联系人的姓名、编号或电话(填写其中一个即可):");scanf("%s",q);for(i=0;i<b;i+) if(strcmp(q,coni.tel)=0|strcmp(q,)=0|strcmp(q,coni.num)=0)printf("n 姓名:%sn 编号:%sn 性别:%sn 年龄:%sn 电
19、话:%sn 地址:%sn 电子邮件:%snn ",,coni.num,coni.sex,coni.age,coni.tel,coni.address,coni.e_mail);printf("n 您想修改的是:nn");printf(" no.1 姓名n");printf(" no.2 编号n");printf(" no.3 性别n");printf(" no.4 年龄n");printf(" no.5 电话n");printf(" no
20、.6 地址n");printf(" no.7 电子邮件n");printf("n 请输入1-7:");scanf("%s",q);if(strcmp(q,"1")=0)system("cls");printf("nn 请输入新姓名:");scanf("%s",);system("cls");printf("nn 联系人信息已更改成功!");printf("nn 姓名:%sn 编号
21、:%sn 性别:%sn 年龄:%sn 电话:%sn 地址:%sn 电子邮件:%snn ",,coni.num,coni.sex,coni.age,coni.tel,coni.address,coni.e_mail);printf("nn 输入y继续修改,输入任意键返回: ");scanf("%s",q);if(strcmp("y",q)=0|strcmp("y",q)=0)system("cls");correct();else system("cls&qu
22、ot;);main();else if(strcmp(q,"2")=0)system("cls");printf("nn 请输入新编号:");scanf("%s",coni.num);printf("nn 联系人信息已更改成功!");printf("nn 姓名:%sn 编号:%sn 性别:%sn 年龄:%sn 电话:%sn 地址:%sn 电子邮件:%snn ",,coni.num,coni.sex,coni.age,coni.tel,coni.address
23、,coni.e_mail);printf("nn 输入y继续修改,输入任意键返回: ");scanf("%s",q);if(strcmp("y",q)=0|strcmp("y",q)=0)system("cls");correct();else system("cls");main();else if(strcmp(q,"2")=0)system("cls");printf("nn 请输入新性别:");scanf(&
24、quot;%s",coni.sex);printf("nn 联系人信息已更改成功!");printf("nn 姓名:%sn 编号:%sn 性别:%sn 年龄:%sn 电话:%sn 地址:%sn 电子邮件:%snn ",,coni.num,coni.sex,coni.age,coni.tel,coni.address,coni.e_mail);printf("nn 输入y继续修改,输入任意键返回: ");scanf("%s",q);if(strcmp("y",q)=0|
25、strcmp("y",q)=0)system("cls");correct();else system("cls");main();else if(strcmp(q,"4")=0)system("cls");printf("nn 请输入新年龄:");scanf("%s",coni.age);printf("nn 联系人信息已更改成功!");printf("nn 姓名:%sn 编号:%sn 性别:%sn 年龄:%sn 电话:%s
26、n 地址:%sn 电子邮件:%snn ",,coni.num,coni.sex,coni.age,coni.tel,coni.address,coni.e_mail);printf("nn 输入y继续修改,输入任意键返回: ");scanf("%s",q);if(strcmp("y",q)=0|strcmp("y",q)=0)system("cls");correct();else system("cls");main();else if(strc
27、mp(q,"5")=0)system("cls");printf("nn 请输入新电话:");scanf("%s",coni.tel);printf("nn 联系人信息已更改成功!");printf("nn 姓名:%sn 编号:%sn 性别:%sn 年龄:%sn 电话:%sn 地址:%sn 电子邮件:%snn ",,coni.num,coni.sex,coni.age,coni.tel,coni.address,coni.e_mail);printf(&qu
28、ot;nn 输入y继续修改,输入任意键返回: ");scanf("%s",q);if(strcmp("y",q)=0|strcmp("y",q)=0)system("cls");correct();else system("cls");main();else if(strcmp(q,"6")=0)system("cls");printf("nn 请输入新地址:");scanf("%s",coni.addre
29、ss);printf("nn 联系人信息已更改成功!");printf("nn 姓名:%sn 编号:%sn 性别:%sn 年龄:%sn 电话:%sn 地址:%sn 电子邮件:%snn ",,coni.num,coni.sex,coni.age,coni.tel,coni.address,coni.e_mail);printf("nn 输入y继续修改,输入任意键返回: ");scanf("%s",q);if(strcmp("y",q)=0|strcmp("y"
30、,q)=0)system("cls");correct();else system("cls");main();else if(strcmp(q,"7")=0) system("cls");printf("nn 请输入新e_mail:");scanf("%s",coni.e_mail);system("cls");printf("nn 联系人信息已更改成功!");printf("nn 姓名:%sn 编号:%sn 性别:%sn
31、年龄:%sn 电话:%sn 地址:%sn 电子邮件:%snn ",,coni.num,coni.sex,coni.age,coni.tel,coni.address,coni.e_mail);printf("nn 输入y继续修改,输入任意键返回: ");scanf("%s",q);if(strcmp("y",q)=0|strcmp("y",q)=0)system("cls");correct();else system("cls");main();
32、else printf("nn 您的输入有误,请按任意键返回");getch();search();k=0;if(k)printf("nn 对不起,没有找到相关联系人的信息,是否继续修改?nn 输入y继续,输入任意键返回: ");scanf("%s",q);if(strcmp("y",q)=0|strcmp("y",q)=0)system("cls");correct();elsesystem("cls");main();void del() 定义删除函数
33、 int i,j,flag=1;char q100,ch20;system("cls");printf("nn 请输入您要删除联系人的姓名、编号或电话(填写其中一个即可): ") ;scanf("%s",q);for(i=0;i<b;i+)if(strcmp(q,coni.tel)=0|strcmp(q,)=0|strcmp(q,coni.num)=0) printf("nn 姓名:%sn 编号:%sn 性别:%sn 年龄:%sn 电话:%sn 地址:%sn 电子邮件:%snn ",coni
34、.name,coni.num,coni.sex,coni.age,coni.tel,coni.address,coni.e_mail);flag=0;break;if(flag)printf("nn 对不起,您所输入的此联系人不存在!n"); printf("nn 输入y继续进行删除操作,输入任意键返回主菜单: ");scanf("%s",ch);if(strcmp("y",ch)=0|strcmp("y",ch)=0) system("cls");del(); else m
35、ain();printf("nn 您确定要删除该联系人吗? y/n : ");scanf("%s",ch);if(strcmp(ch,"y")=0|strcmp(ch,"y")=0)for(j=i;j<=b;j+)conj=conj+1; b-; printf("n 您已成功删该联系人 n");printf("n 输入y继续进行删除操作,输入任意键返回主菜单: ");scanf("%s",ch);if(strcmp("y",ch)
36、=0|strcmp("y",ch)=0) system("cls");del();else main();printf("n 联系人未删除n");printf("n 输入y继续进行删除操作,输入任意键返回主菜单: ");scanf("%s",ch);if(strcmp("y",ch)=0|strcmp("y",ch)=0) system("cls");del();else main();void save() 定义保存函数 system
37、("cls");file *fp; int i;fp=fopen("通讯录.doc","w"); if(fp=null) printf("cannot write the file.n"); exit(0);for(i=0;i<b;i+)fprintf(fp,"nn 姓名:%sn 编号:%sn 性别:%sn 年龄:%sn 电话:%sn 地址:%sn 电子邮件:%snn ",,coni.num,coni.sex,coni.age,coni.tel,coni.address,
38、coni.e_mail);fprintf(fp,"nn"); fprintf(fp," 姓名 编号 性别 年龄 电话 地址 电子邮件 "); for(i=0;i<b;i+) fprintf(fp,"");fprintf(fp," %-9s%-9s%-9s%-9s%-12s%-12s%-12s ",,coni.num,coni.sex,coni.age,coni.tel,coni.address,coni.e_mail); fprintf(fp,"");fclose(fp); printf("nnn 您输入的信息已保存!nn");printf(" 按任意键返回主界面:");getch(); system("cls"); m
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 城市更新的全球发展趋势
- 机械拆装课程设计
- 三年级信息技术下册 Windows桌面 窗口 菜单(一)教案 冀教版
- 机械化摘水果课程设计
- 机械加工有哪些课程设计
- 低空经济创新技术与市场前景综合研究报告
- 机械制造拨叉二课程设计
- 六年级语文下册 第四单元 口语交际 即兴发言教案 新人教版
- 机械制图cad课程设计
- 2016年湖北省荆州市中考真题语文试题(解析版)
- 部编版2020年四年级语文上册16-麻雀课件
- (鲁科版)五年级英语上册知识要点总复习
- 小学心理健康课教学设计《跳出思维定势》
- 网点经营技巧课件1
- 工程项目档案管理教材课件
- 小学语文人教五年级上册动静结合(郑颖慧晒课)课件
- 建设工程材料送检规范汇总
- 通用BIQS培训资料课件
- 性健康教育课件
- (精选课件)蜗牛爬井的故事
- 影响世界的工业革命 2023届高三统编版历史一轮复习
评论
0/150
提交评论