c语言课程设计报告电话薄管理系统毕业论文.doc
《c语言课程设计报告电话薄管理系统毕业论文.doc》由会员分享,可在线阅读,更多相关《c语言课程设计报告电话薄管理系统毕业论文.doc(24页珍藏版)》请在咨信网上搜索。
1设计题目的容、任务与具体要求 本程序是非数值计算型算法设计,我设计出了通讯录管理系统的基本功能,并设计了简单的界面。本程序主要考察对自定义函数的熟悉程度,本程序主要使用的是数组的相关操作,包括结构体数组的输入、输出、查找、删除等。我设计的这个通讯录系统也初步实现了人员信息的显示、删除、查找、修改、添加等必要的功能。 ①记录通讯录的人员的、地址、 、。 ②显示所有人员的信息。 ③通过输入查找人员信息。 ④通过输入查找到要删除的人员信息,然后可以进行删除。 ⑤通过输入查找到要修改的人员信息,然后可以进行修改。 ⑥添加人员信息。 2总体设计思路 本系统首先设计出了主函数,然后根据去要实现的功能分别设计拉,显示、删除、查找、修改、添加功能的子函数。在显示的函数设计过程中首先运用拉文件的读取等必要的知识通过把文件的容读取到存然后打印出来。删除函数的设计是首先从文件找到要删除的人,然后通过写一个实现删除目的的FOR循环将该人从存里删除,然后再用写的方式打开文件,将存的信息写入文件,实现删除。查找也是先打开文件,用一个字符串对比的方法找出用户要查找的人,然后打印出来。修改也大体和删除一样,添加函数在设计时通过申请一片空间,然后通过指针将需要添加的信息添加进去,从而实现添加功能。 下面就是总的程序流程图: 执行printf() 退出系统 调用output() 函数 调用 insert() 函数 调用 modify() 函数 调用 found()函数 调用 del() 函数 选择(a) 执行printf()函数 开始 3功能模块的具体设计 3.1 界面分析 3.1.1开始界面 ********************欢迎光临通讯录管理系统******************** 1.输出通讯录 2. 删除记录 3.查找记录 4.修改 5.添加新联系人 6.退出程序 ************************************************************** 请输入命令(1-6): 3.1.2显示功能的界面: 选择1后系统出现现有的所有人员: 1 高鸿鹏 山西 100000 15862433445 黄亮 四川 200000 15826133446 雷管 重庆 300000 8888888888888 欧鸿 重庆 300000 15826188888 代兵 重庆 300000 15826166666 向梅 重庆 300000 15826155555 欧鸿 山西 100000 555555555 3.1.3 删除功能的界面: ********************欢迎光临通讯录管理系统******************** 1.输出通讯录 2. 删除记录 3.查找记录 4.修改 5.添加新联系人 6.退出程序 ************************************************************** 请输入命令(1-6): 2 请输入你要删除的XX: 请输入你要删除的XX: 哈哈 你要的资料如下 : 哈哈 粉红色的骄傲 55555 5255582删除成功! ********************欢迎光临通讯录管理系统******************** 1.输出通讯录 2. 删除记录 3.查找记录 4.修改 5.添加新联系人 6.退出程序 ************************************************************** 请输入命令(1-6): 3.1.4 查找功能的界面: ********************欢迎光临通讯录管理系统******************** 1.输出通讯录 2.删除记录 3.查找记录 4.修改 5.添加新联系人 6.退出程序 ************************************************************** 请输入命令(1-6): 3 请输入XX:欧鸿 已查到,记录为: 欧鸿 重庆 300000 15826188888 3.1.5 修改功能的界面: ********************欢迎光临通讯录管理系统******************** 1.输出通讯录 2. 删除记录 3.查找记录 4.修改 5.添加新联系人 6.退出程序 ************************************************************** 请输入命令(1-6): 4 请输入XX: 输入后的系统界面: ********************欢迎光临通讯录管理系统******************** 1.输出通讯录 2. 删除记录 3.查找记录 4.修改 5.添加新联系人 6.退出程序 ************************************************************** 请输入命令(1-6): 4 请输入XX:欧鸿 已查到,记录为: 欧鸿 重庆 300000 15826188888 请输入修改信息 请输入XX: 输入修改信息后的系统界面: 已查到,记录为: 欧鸿 重庆 300000 15826188888 请输入修改信息 请输入XX:欧祖鸿 请输入地址:重庆 请输入 :300000 请输入 号码:15826130422 3.1.6添加功能的界面: 选择5后的系统界面: ********************欢迎光临通讯录管理系统******************** 1.输出通讯录 2. 删除记录 3.查找记录 4.修改 5.添加新联系人 6.退出程序 ************************************************************** 请输入命令(1-6): 5 ************************ XX: 输入信息后的的系统界面********************欢迎光临通讯录管理系统******************** 1.输出通讯录 2. 删除记录 3.查找记录 4.修改 5.添加新联系人 6.退出程序 ************************************************************** 请输入命令(1-6): 5 ************************ XX:原野 地址:重庆 :300000 :11122211121 ************************ 3.1.7退出功能的界面: 输入6后的系统界面: ********************欢迎光临通讯录管理系统******************** 1.输出通讯录 2. 删除记录 3.查找记录 4.修改 5.添加新联系人 6.退出程序 ************************************************************** 请输入命令(1-6): 6 欢迎再次光临! Press any key to continue 3.2 程序设计中的数据设计 软件中使用啦结构体和结构体数组,如: struct callmember { char name[20]; char address[20]; char code[20]; char callnumber[20]; }; 对用户的信息进行保存,他们都以二进制的形式读写。 其中: char name[20]; char address[20]; char code[20]; char callnumber[20] 分别对、地址、 、进行储存 在子函数中还使用了结构体数组: struct callmember one[100]; 还使用了exit()、 fclose()等库函数。 还运用了头文件: #include "stdafx.h" #include"string.h " #include <stdio.h> #include<stdlib.h> 其中还使用啦大量的子函数,例如: void output(); void del(); void found(); void modify() ; void insert(); 部分子函数的详细代码: void output() { int b=0,i=0; int j; struct callmember one[100]; FILE *fp; if((fp=fopen("e:\\通讯录.txt","r"))==NULL) { printf("无法从已有通讯录输入!\n可能是因为原通讯录不存在或为空!\n建议你检查你的通讯录文挡!\n"); exit(1); } while(fscanf(fp,"%s%s%s%s",one[i].name,one[i].address,one[i].code,one[i].callnumber)!=EOF) i++; j=i; for(i=0;i<j;i++) { printf("%s %s %s %s\n ",one[i].name,one[i].address,one[i].code,one[i].callnumber); } fclose(fp); } void insert() { FILE *fp; struct callmember *p; if((fp=fopen("e:\\通讯录.txt","a+"))==NULL) { printf("操作失败."); exit(1); } p=(struct callmember *)malloc(sizeof(struct callmember)); printf(" ************************\n"); printf(" :"); scanf("%s",p->name); printf(" 地址:"); scanf("%s",p->address); printf(" :"); scanf("%s",p->code); printf(" :"); scanf("%s",p->callnumber); printf(" ************************\n"); fprintf(fp,"%s %s %s %s",p->name,p->address,p->code,p->callnumber); fclose(fp); free(p); } 通过对这些资源的合理利用使系统初步实现了通讯录管理系统的基本功能。 3.3算法流程图 3.3.1主函数模块的流程图 开始 进入主函数 int main() 执行printf()函数 输入指令(a) 执行printf() 退出系统 调用 insert() 函数 调用 modify() 函数 调用 found()函数 调用 del() 函数 调用output() 函数 a!=1.2.3.4.5.6 图3.3.1 主函数流程图 3.3.2 void output()函数流程图 执行for()循环 开始 If语句判断 执行printf() 结束 执行while()循环 结束 图3.3.2 void output()函数流程图 开始 3.3.3 void del()函数流程图 执行scanf() 执行if() 执行printf() 结束 执行do{}while()循环语句 执行while()循环 执行printf() 执行for()循环 执行if() 执行printf() 结束 执行for()循环 结束 图3.3.3 void del()函数流程图 3.3.4 void found()函数流程图 结束 执行printf() 执行if() 开始 结束 执行while() 执行printf() 执行scanf() 图3.3.4 void found()函数流程图 3.3.5 void modify函数流程图 开始 执行if() 执行printf() 结束 执行while() 执行printf() 执行scanf() 执行for() 执行if() 执行if() 执行printf() 结束 执行for()循环 结束 图3.3.5 void modify函数流程图 3.3.6 void insert()函数流程图 开始 执行if() 执行printf() 结束 申请空间 执行printf() 执行scanf() 写入文件 结束 图3.3.6 void insert()函数流程图 4功能模块的调试与测试 4.1执行软件 1、当软件中总有输入人员信息时: 1.查看全部信息时: 根据提示输入1 2.删除人员信息: 根据提示输入 2 按回按回车 显示人员信息车 输入需要删除人员:例如(欧鸿)按回车 显示需要删除人员信息并删除。 3.查找人员信息 : 根据提示输入 3 按回车 输入要查找的人员名字:例如(欧鸿)按回车 显示查找到的人员信息。 4.修改人员信息: 根据提示输入4 按回车 输入需要修改的人员:例如(欧鸿)按回车 显示修改前的信息。 根据提示输入修改的信息。 5.添加人员信息: 根据提示输入5 按回车 输入添加的信息 : 地址: : : 输入完毕后 按回车 可以再根据提示使用查找功能。 该操作可以看见刚才添加的人员信息。 2、当软件中总没有输入人员信息时: 1.查看全部信息时: 根据提示输入1 按回车 显示:无法从已有通讯录输入!\n可能是因为原通讯录不存在或为空!\n建议你检查你的通讯录文挡! 2.删除人员信息: 根据提示输入 2 按回车 输入需要删除人员:例如(欧鸿)按回车 没有信息。 3.查找人员信息 : 根据提示输入 3 按回车 输入要查找的人员名字:例如(欧鸿)按回车 显示:对不起,通讯簿中没有此人的记录。 4.修改人员信息: 根据提示输入4 按回车 输入需要修改的人员:例如(欧鸿)按回车 没有显示 5.添加人员信息: 根据提示输入5 按回车 输入添加的信息 : 地址: : : 输入完毕后 按回车 可以再根据提示使用查找功能。 该操作可以看见刚才添加的人员信息。 4.2功能模块的调试 4.2. 1.运行进入程序主菜单 主选单具有所有函数的功能实现的选择功能,通过主选单的操作进入各个功能。主选单主要由主函数提供,其功能由子函数实现。 4.2.2.显示模块 查看所有人员信息界面 可以显示全部的人员的信息。可在3 .3参看流程图。 4.2.3.删除模块 删除功能界面 4.2.4.查找模块 进入查找记录界面 4.2.5.修改模块 进入修改界面 4.2.6.添加模块 进入添加界面 可以根据要求添加用户想添加的人员信息。 4.2.7.退出 进入退出界面: 当出现没有查找人员信息时会自动返回主选单。 6 总结 通过这次课程设计,我对很多的函数有啦 新的认识,也学会啦运用多种函数,我也明白啦写软件的基本过程,和基本方法。写软件的过程中我又学到啦曾经自己不知道的函数或是自己不会的函数的用法。特别是文件的开启和关闭,读与写。这次课程设计课总的来说让我受益匪浅。 在软件的设计过程中遇到拉很多的困难。在软件一次一次的调试失败下曾经想过要放弃。我最后还是让自己坚持啦下来,毫不畏惧困难,在同学的帮助与讲解下我总算是顺利的完成啦软件的设计。 虽然在调试程序遇到拉很多的困难,当软件调试成功时那种喜悦的感觉没有什么东西可以代替。在程序的编写过程中我发现我自己有很多的知识漏洞和缺陷,需要进一步努力学习来完善自己。 在这几天的编写过程中我对c语言有啦更进一步的认识和了解。此次编程过程的经验和知识肯定能促进我以后的学习。 此次课程设计不仅给啦我很多很好的经验,也然我体会到啦失败时的焦急和难受,也体会到啦成功时的兴奋与喜悦。 致 在此我向在此次课程设计时对我伸出援助之手的向毅、海玲老师,还有帮助我的同学们。这个软件的实现固然需要自身的努力,当然也离不开同学们的帮助与讲解。缺少啦这些也许我的程序就无法调试完成。老师和同学们的帮助与讲解。 签名:欧祖鸿 日期:2007年7月10日 参考文献 [1]谭浩强,基温。C语言程序设计教程。第三版。:高等教育,2006 [2]谭浩强,基温。C语言习题集与上机指导。第三版。:高等教育,2006 [3]谭浩强。C程序设计(第三版)。:清华大学,2005 [4]谭浩强。C程序设计(第二版)。:清华大学,1999 目录 1设计题目的容、任务与具体要求1 2总体设计思路2 3功能模块的具体设计3 3.1 界面分析3 3.1.1开始界面3 3.1.2显示功能的界面:3 3.1.3 删除功能的界面:4 3.1.4 查找功能的界面:4 3.1.5 修改功能的界面:5 3.1.6添加功能的界面:6 3.1.7退出功能的界面:7 3.2 程序设计中的数据设计8 3.3算法流程图10 3.3.1主函数模块的流程图10 3.3.2 void output()函数流程图11 3.3.3 void del()函数流程图11 3.3.4 void found()函数流程图12 3.3.5 void modify函数流程图14 3.3.6 void insert()函数流程图15 4功能模块的调试与测试16 4.1执行软件16 4.2功能模块的调试18 4.2. 1.运行进入程序主菜单18 4.2.2.显示模块18 4.2.3.删除模块19 4.2.4.查找模块19 4.2.5.修改模块20 4.2.6.添加模块20 4.2.7.退出21 6 总结21 致22 参考文献23 24 / 24- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 课程设计 报告 电话薄 管理 系统 毕业论文
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【二***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【二***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【二***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【二***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文