程序设计基础课程设计报告

上传人:第*** 文档编号:33539849 上传时间:2018-02-15 格式:DOC 页数:17 大小:315KB
返回 下载 相关 举报
程序设计基础课程设计报告_第1页
第1页 / 共17页
程序设计基础课程设计报告_第2页
第2页 / 共17页
程序设计基础课程设计报告_第3页
第3页 / 共17页
程序设计基础课程设计报告_第4页
第4页 / 共17页
程序设计基础课程设计报告_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《程序设计基础课程设计报告》由会员分享,可在线阅读,更多相关《程序设计基础课程设计报告(17页珍藏版)》请在金锄头文库上搜索。

1、 程序设计基础课程设计报告班 级: 通信 1002 姓 名: 马颖萍 指导教师: 完成日期: 2011 年 9 月 2 日客户通讯录管理程序设计1 设计题目与要求1.1 题目客户通讯录管理程序设计1.2 设计内容要求将输入的客户通讯信息保存到文本文件中,并实现对客户信息的增加、删除、修改、查询功能。1.3 要求功能完善,界面友好。2 算法设计与描述(要求有相关流程图)2.1 算法设计与描述本系统有分 7 个功能, (1)输入记录 (2)显示记录 (3)按姓名查找 (4)按电话号码查找 (5)按姓名排序 (6)删除记录 (7)修改记录。其主要利用结构体类型、数组、函数等 c 语言知识来实现。主函

2、数:利用 switch()实现主界面的显示与各选项的连接。输入记录:利用 scanf 函数将需要添加的信息添加进去,从而实现添加功能。显示记录:利用文件的 if 语句来实现逐一显示记录的功能。按姓名查找:先定义一个 char name20数组,再通过 strcmp()来实现数据的按姓名查找。按电话查找:先定义一个 char phone12数组,再通过 strcmp()来实现数据的按电话查找。按姓名排序:按比较大小的方法将姓名进行排序。删除记录:通过将后一行数据覆盖前一行数据的方法来实现删除功能。修改记录:通过 strcmp()来实现数据的按姓名查找。主菜单输入 显示 姓名查找号码查找姓名排序删

3、除 修改 2.2 流程图(1)char s80printf(“请选择(0-7):”)a7y nreturn a(2)输入记录printf(ttt*请输入用户信息 *n);(getchar()=y | getchar()=Y)y nadduser();return(0)(3)显示Retuen;inti;num!=0 y nprintf(ttt* 以 printf(ttt 通讯录中无任何纪录n);下为通讯录所有信息*n);Multiplexsystem(pause);(4)按姓名查找(5)按电话号码查询和 直到 strcmp(customeri.phone, return(0)phone)=0In

4、tmark=0i=0y inum nNi+Rrreturn(0);int mark=0; int i;i=0y i /标准输入输出函数库#include /标准函数库#include /字符串函数库#include /屏幕操作函数库struct recordchar name20; /姓名char phone12; /电话char address50; /地址char postcode8; /邮政编码char e_mail20; /电子邮件。customer100; /假设最大数为 100.int num; /定义全局变量 num,表示已经输入的人数 。int menu_select()cha

5、r s80;int a;/定义整形变量system(cls);printf(tt*欢迎进入客户通讯录管理界面 *nn);printf(ttt0. 输入记录n);printf(ttt1. 显示记录n);printf(ttt2. 按姓名查找n);printf(ttt3. 按电话号码查找n);printf(ttt4. 按姓名排序n);printf(ttt5. 删除记录n);printf(ttt6. 修改记录n);printf(ttt7. Quitn);printf(tt*nn);doprintf(请选择(08):);scanf(%s,s);a=atoi(s);while (a7);return a;

6、int adduser()printf(ttt* 请输入用户信息 *n);printf(ttt 输入姓名:);scanf(%s,customernum.name);printf(ttt 输入电话号码:);scanf(%s,customernum.phone);printf(ttt 输入地址:);scanf(%s,customernum.address);printf(ttt 输入邮编:);scanf(%s,customernum.postcode);printf(ttt 输入 e-mail:);scanf(%s,customernum.e_mail);num+;printf(ttt 是否确认添

7、加?(Y/N):n);if(getchar()=y | getchar()=Y)adduser();return(0);void list()int i;system(cls);if(num!=0)printf(ttt* 以下为通讯录所有信息*n);for (i=0;i=0);customerj+1=tmp;printf(ttt 排序成功,是否显示?(y/n);system(pause);if (getchar()=y)list();return(0);int change()int mark=0;int i;char name20;printf(ttt 请输入姓名:n);scanf(%s,n

8、ame);for(i=0;inum;i+)if (strcmp(customeri.name,name)=0)printf(ttt* 以下是您要修改的用户信息 *n);printf(ttt 姓名: %sn,customeri.name);printf(ttt 电话: %sn,customeri.phone); printf(ttt 地址: %sn,customeri.address);printf(ttte-mail:%sn,customeri.e_mail);printf(ttt*n);system(pause);printf(ttt 姓名: ); scanf(%s, customer i.

9、name); printf(ttt 电话: ); scanf(%s, customer i.phone); printf(ttt 地址: ); scanf(%s, customer i.address);printf(ttt 邮编:);scanf(%s, customer num.postcode);printf(ttt e_mail: );scanf(%s, customer i.e_mail);printf(ttt 修改成功!);system(pause);printf(ttt 按任意键返回主菜单n);getchar();return(0);return(0);int main()prin

10、tf(tt*n);printf(tt*欢迎进入客户通讯录管理界面 *n);printf(tt*n);printf(按任意键进入主菜单n);getchar();int selectnum;while(1)selectnum = menu_select();switch(selectnum)case 0:adduser();break;case 1:list(); break;case 2:searchbyname();break;case 3:searchbyphone();break;case 4:sortbyname();break;case 5:deletebyname();break;c

11、ase 6:change();break;case 7:printf(谢谢使用,再见!n);system(pause);getchar();exit(0);getchar();return 0;5 程序运行结果(1)进入输入记录界面(2)进入显示记录界面(3)进入按姓名查找的界面(4)进入按电话号码查找的界面(5)进入按姓名排序的界面(6)进入删除记录界面(7)进入修改记录界面(8)进入退出系统界面6 设计总结本系统首先设计出了主函数,然后根据去要实现的功能分别设计子函数。显示(1)输入记录 ( 2)显示记录 (3)按姓名查找 (4)按电话号码查找 (5)按姓名排序 (6)删除记录 (7)修改

12、记录 的子函数。在显示的函数设计过程中主函数利用 switch()实现主界面的显示与各选项的连接。删除函数的设计是首先在文件中找到要删除的人,然后通过写一个实现删除目的的 for 循环将该人从内存中删除,通过将后一行数据覆盖前一行数据的方法来实现删除功能。查找也是用一个字符串对比的方法找出用户要找的人或电话号码,即通过 strcmp()来实现数据的查找。修改也大体和删除相同,通过 strcmp()和 for 语句来找到记录,然后对其进行修改。添加函数通过 scanf 函数将需要添加的信息添加进去,从而实现添加功能。在初学 C 语言的一个学期后, 我们进行了 C 语言实训阶段 ,尝试编写一个程序系统。在为期一周的时间中,我们同组的同学共同的感受是:C 语言实训和平时上课所接触的程序是有很大不同的, 所经受的考验和克服的困难是平时所无法比拟的。 好在同组的搭档们精诚合作,分工明确,有问题共同解决,攻克了 C 语言实训的程序。在这里,我作为其中的参与者,感触良多。 在这次实训中,我们对 C 语言有了一个更深的了解认识,也对这个学期学的知识得到巩固,还尝试运行编程,每次运行程序成功,让我们对下面的项目就充满信心。通过与同学合作编写程序,最终把最初的理论知识转化基本技能。这次的实训,使我对 C 语言的学习产生浓厚的兴趣。每天大家来得很早,大家在一起学习,取长补短,我们很好的

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号