专业课程设计模板电话簿.doc
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 专业课程 设计 模板 电话簿
- 资源描述:
-
课程设计(论文)任务书 软件 学 院 软件+桥梁工程 专 业 2 班 一、课程设计(论文)题目 电话薄管理系统 二、课程设计(论文)工作自 年 6 月 4 日起至 年 6 月 10日止。三、课程设计(论文)地点: 软件学院实训中心 四、课程设计(论文)内容规定: 1.本课程设计目 (1)使学生掌握系统各功能模块基本工作原理; (2)培养学生程序设计基本思路和办法; (3)使学生掌握程序调试办法; (4)培养学生分析、解决问题能力; (5)提高学生科技论文写作能力。 2.课程设计任务及规定 1)基本规定: 设计一种电话簿管理小程序,运用对象数组或构造数组存储电话簿数据,具备添加、删除、显示、和查询联系人电话号码功能(电话簿信息涉及:姓名、性别、工作单位、手机号码、固定电话、存储日期)。重要功能: (1)新增信息、删除信息、修改信息(姓名以字母开始字符串命名); (2)按姓名字母顺序输出电话簿所有记录 (3)按姓名查询记录; (4)增长缺省查询方式,即查询时只输入姓名首字母,所有符合这一条件电话资料均在屏幕上显示 2)创新规定: 在基本规定达到后,可进行创新设计,如提高系统容错能力,响应速度等。 3)课程设计论文编写规定 (1)要按照书稿规格打印誊写课程设计报告 (2)论文涉及目录、绪论、正文、小结、参照文献、谢辞、附录等 (3)毕业论文装订按学校统一规定完毕 4)答辩与评分原则: (1)完毕原理分析:20分; (2)完毕设计过程:30分; (3)完毕调试:30分; (4)回答问题:20分。 5)参照文献: (1)谢昕 刘觉夫 王更生《C++程序设计》 北京邮电大学出版社 (2)郑莉 .《C++语言程序设计》 清华大学出版社 (3)钱能. 《C++程序设计教程》 高等教诲出版社 6)课程设计进度安排 内容 天数 地点 构思及程序设计 2 图书馆,教室 程序调试 2 实训中心 撰写论文 1 图书馆、实训中心 学生签名: 年 6 月 4 日 课程设计(论文)评审意见 (1)完毕原理分析(20分):优( )、良( )、中( )、普通( )、差( ); (2)设计分析 (30分):优( )、良( )、中( )、普通( )、差( ); (3)完毕调试 (30分):优( )、良( )、中( )、普通( )、差( ); (4)回答问题 (20分):优( )、良( )、中( )、普通( )、差( ); (5)综合级别: 评阅人: 职称: 副专家 年 6 月 10 日 目 录 一、课程设计任务概述 3 二、各功能模块详细实现 6 三、程序清单 12 四、程序调试与运营成果 24 五、设计心得(小结) 27 六、参照文献 28 一、课程设计任务概述 1 需求分析 1.1功能需求分析: 通讯录重要有一下模块:通讯录界面设计、添加联系人、删除联系人、显示所有联系人、修改信息、查询联系人,其中姓名可以由字符和数字混合编码,电话号码可由字符和数字构成。 1.11通讯录界面设计 重要功能是设计通讯录界面,可以提示顾客实际操作等。我采用是按照序号来实现相应操作,其中:1添加联系人2删除联系人3显示所有联系人4修改信息5查询联系人6 关闭通讯录 1.12通讯录添加联系人模块 重要功能是添加联系人模块,添加操作是依照顾客规定实现。涉及添加联系人姓名、性别、电话号、、邮编、工作单位、储存日期等,最后输入完毕后,将提示新联系人信息已经保存好!! 1.13通讯录删除联系人模块 重要功能是删除不再需要联系人。其中涉及输入你要删除输入电话或电话号码如果没有话,将提示:对不起!!!联系人中没你要找人!!!如果找到, 则提示删除联系人所有信息和这个人信息已经从你通讯录中删除信息! 1.14通讯录显示所有联系人模块 显示所有联系人信息,涉及姓名、性别、电话号、、邮编、工作单位、储存日期并提示所有联系人已经所有显示出来!! 1.15通讯录修改联系人模块 重要是修改联系人信息,界面提示要输入需要修改姓名或者电话号码,如果不对的,显示对不起,联系人中没有你找人。如果对的,则显示出改联系人所有信息,并提示依照下面提示修改信息,姓名、性别、电话号、、邮编、工作单位、储存日期等 1.16通讯录关闭通讯录模块 提示谢谢使用! 1.2 环境需求分析: 操作系统: Windows XP 开发软件: Visual 1.3 办法需求分析 该系统由于数据也许会很大,故采用文献操作,可以打开或修改指定文献及将各种文献构成一种文献。而联系人信息则通过类对象来保存,它完全使用类来实现,充分体现面向对象程序设计特点。 2概要设计 2.1 系统功能模块图 通讯录系统 信息初始化 添加联系人 删除联系人 显示所有联系人 修改信息 查询联系人 关闭通讯录 2.2 设计思想: 通讯录系统是用面向对象办法设计,在类中定义了一下办法:add_person(),del_person(),show_all(),alter(),select(),save_new()等办法和name,sex, work address, , number, post,属性来实现通讯录各种操作。 二、各功能模块详细实现 3.2重要代码描述 3.21添加联系人实现; 通过输入联系人如下信息:姓名、性别、电话、邮编、工作单位,并把输入信息保存对象属性,创立或者打开文献,并向文献中写入新添加联系人信息 添加联系人详细代码: void book::add_person() { cout <<endl <<"依照下面提示输入新联系人信息" <<endl <<endl <<"姓名:" ; cin >>name; fflush(stdin); cout <<"性别:"; cin >>sex; fflush(stdin); cout <<"电话号:"; cin >>number; fflush(stdin); cout <<"邮编:"; cin >>post; fflush(stdin); cout <<"工作单位:"; cin >>address; fflush(stdin); cout <<"存储日期:"; cin >>date; fflush(stdin); save_new(); cout <<endl <<endl <<"新联系人信息已经保存好!!!!!" <<endl <<endl; system("pause"); } 保存联系人代码: void book::save_new() { ofstream outData("pbook.txt",ios::app); if (!outData) { cout <<endl <<"对不起!!!打开文献失败!!!!" <<endl <<endl; system("pause"); return; } outData << setiosflags(ios::left) << setw(17) << name <<" " << setw(16) << number <<" " << setw(18) << sex<<" " << setw(14) << post <<" " << setw(20) << address <<endl; outData.close(); } 3.22删除联系人实现 一方面输入你要删除电话号码,删除操作时采用输入姓名或者电话号码与文献中姓名或者电话号码比较,从头到尾开始遍历,如果没有话,将提示:对不起!!!联系人中没你要找人!!!如果找到,则提示删除联系人所有信息和这个人信息已经从你通讯录中删除信息! //删除联系人 void book::del_person() { ofstream outData("temp.txt",ios::out); ifstream inData("pbook.txt",ios::in);// if (!outData || !inData) { cout <<endl <<"对不起!!!!找不到文献!!!!" <<endl; system("pause"); return; } string sign; cout <<endl <<"你要删除输入姓名或电话号:"; cin >>sign; string str1; bool flag = true; string str; while (inData >>name >>number) { getline(inData,str); if ((sign==name) || (sign==number)) { cout <<endl <<"你想删除联系人:" <<endl <<endl; cout <<str1 <<endl; cout <<setiosflags(ios::left) <<setw(17) <<name <<" " <<number <<str <<endl; flag = false; break; } outData <<setiosflags(ios::left) <<setw(17) <<name <<" " <<number <<str <<endl; } if (flag) { cout <<endl <<"对不起!!!联系人中没你找人!!!!" <<endl <<endl; } else { while (getline(inData,str)) { outData <<str <<endl; } outData.close(); inData.close(); ofstream out("pbook.txt",ios::out); ifstream in("temp.txt",ios::in); if (!out || !in) { cout <<endl <<"对不起不能打开文献!!!" <<endl <<endl; system("pause"); return; } while (getline(in,str)) { out <<str <<endl; } out.close();// in.close(); cout <<endl <<"这个人信息已经从你通迅录中删除!!!" <<endl <<endl; } system("pause"); } 3.23显示所有联系人实现: 把文献中各种信息读取并显示出来,代码如下: //显示所有联系人 void book::show_all() { ifstream inData("pbook.txt",ios::in); if (!inData) { cout <<endl <<"对不起!!!!没有找到文献!!!!!" <<endl; system("pause"); return; } bool flag = true; string record; while (getline(inData,record)) { if (flag) { cout <<endl <<"所有联系人信息如下:"<<endl; } cout <<record <<endl; flag = false; } if (flag) { cout <<endl <<"你通迅录中没有联系人!!!!!" <<endl <<endl; } else { cout <<endl <<"所有联系人已经所有显示出来!!!!!" <<endl <<endl; } system("pause"); } 3.24 修改联系人模块 只要输入来联系人名字或者电话,进行文献爱你遍历查找到联系人信息,而后进行修改。 //修改信息 void book::alter() { ofstream outData("temp.txt",ios::out); ifstream inData("pbook.txt",ios::in);// if (!outData || !inData) { cout <<endl <<"对不起!!!!找不到文献!!!!" <<endl; system("pause"); return; } string sign; cout <<endl <<"你要修改输入姓名或电话号:"; cin >>sign; string str1; bool flag = true; string str; while (inData >>name >>number) { getline(inData,str); if ((sign==name) || (sign==number)) { cout <<endl <<"你想修改联系人:" <<endl <<endl; cout <<str1 <<endl; cout <<setiosflags(ios::left) <<setw(17) <<name <<" " <<number <<str <<endl; cout <<endl <<"请依照下面提示修改信息:" <<endl; cout <<"姓名 :" ; cin >>name; fflush(stdin); cout <<"性别 :"; cin >>sex; fflush(stdin); cout <<"电话号:"; cin >>number; fflush(stdin); cout <<"邮编 :"; cin >>post; fflush(stdin); cout <<"工作单位 :"; cin >>address; fflush(stdin); cout <<"存储日期 :"; cin >>date; fflush(stdin); save_new(); flag = false; break; } outData <<setiosflags(ios::left) <<setw(17) <<name <<" " <<number <<str <<endl; } if (flag) { cout <<endl <<"对不起!!!联系人中没你找人!!!!" <<endl <<endl; } else { while (getline(inData,str)) { outData <<str <<endl; } outData.close(); inData.close(); ofstream out("pbook.txt",ios::out); ifstream in("temp.txt",ios::in); if (!out || !in) { cout <<endl <<"对不起不能打开文献!!!" <<endl <<endl; system("pause"); return; } while (getline(in,str)) { out <<str <<endl; } out.close(); in.close(); cout <<endl <<"这个人信息已经在你通迅录中修改!!!" <<endl <<endl; } system("pause"); } 3.25 查询联系人模块 对文献进行遍历,将联系人所有信息都显示出来。详细代码见3.3中。 //查询联系人 void book::select() { ifstream inData("pbook.txt",ios::in); if (!inData) { cout <<endl <<"对不起!!!!文献找不到!!!!" <<endl; system("pause"); return; } string sign; cout <<endl <<"输入你想查找联系人姓名或电话号码:"; cin >>sign; fflush(stdin); string str1; bool flag = true; string str; while (inData >>name >>number) { getline(inData,str); if ((name==sign) || (number==sign)) { cout <<endl <<"你要查找联系人是:" <<endl <<endl; cout <<str1 <<endl; cout <<setiosflags(ios::left) <<setw(17) <<name <<number <<str <<endl; flag = false; system("pause"); break; } } } 3.26关闭通讯录模块 提示谢谢使用!详细代码见3.3中。 三、程序清单 #include <iostream> #include <string> #include <iomanip> #include <fstream> #include <cstdlib> using namespace std; class book { public: book();//默认构造函数 char inter_face();//首页 void add_person();//添加联系人 void del_person();//删除联系人 void show_all();//显示所有联系人 void alter();//修改信息 void select();//查询联系人 void save_new();//保存新增长联系人 private: string name;//姓名 string address;//工作单位 string date;//存储日期 string number;//电话号码 string post;//邮编 string sex;//性别 }; book::book() { name = "\0"; address = "\0"; number = "\0"; post = "\0"; sex = "\0"; } //首页 char book::inter_face() { system("cls"); cout <<endl; cout<<"\t\t★★★★★★★★★★★★★★★★★★★★★★★★★★" <<endl <<"\t\t※ ※" <<endl <<"\t\t※ 电 话 薄 ※" <<endl <<"\t\t※ ※" <<endl <<"\t\t※ 1. 添加新联系人. 4. 修改信息. ※" <<endl <<"\t\t※ ※" <<endl <<"\t\t※ 2. 删除联系人. 5. 查询联系人. ※" <<endl <<"\t\t※ ※" <<endl <<"\t\t※ 3. 显示所有联系人. 6. 关闭通迅录. ※" <<endl <<"\t\t※ ※" <<endl <<"\t\t★★★★★★★★★★★★★★★★★★★★★★★★★★" <<endl <<endl ; cout<<"★注意:输入存储日期时,例如111月1日存储,输入时要输入1111-01-01"<<endl; cout<<"★请选取你需要功能【数字】:"; char choose; cin >>choose; fflush(stdin); return choose; } //添加联系人 void book::add_person() { cout <<endl <<"依照下面提示输入新联系人信息" <<endl <<endl <<"姓名:" ; cin >>name; fflush(stdin); cout <<"性别:"; cin >>sex; fflush(stdin); cout <<"电话号:"; cin >>number; fflush(stdin); cout <<"邮编:"; cin >>post; fflush(stdin); cout <<"工作单位:"; cin >>address; fflush(stdin); cout <<"存储日期:"; cin >>date; fflush(stdin); save_new(); cout <<endl <<endl <<"新联系人信息已经保存好!!!!!" <<endl <<endl; system("pause"); } //删除联系人 void book::del_person() { ofstream outData("temp.txt",ios::out); ifstream inData("pbook.txt",ios::in);// if (!outData || !inData) { cout <<endl <<"对不起!!!!找不到文献!!!!" <<endl; system("pause"); return; } string sign; cout <<endl <<"你要删除输入姓名或电话号:"; cin >>sign; string str1; bool flag = true; string str; while (inData >>name >>number) { getline(inData,str); if ((sign==name) || (sign==number)) { cout <<endl <<"你想删除联系人:" <<endl <<endl; cout <<str1 <<endl; cout <<setiosflags(ios::left) <<setw(17) <<name <<" " <<number <<str <<endl; flag = false; break; } outData <<setiosflags(ios::left) <<setw(17) <<name <<" " <<number <<str <<endl; } if (flag) { cout <<endl <<"对不起!!!联系人中没你找人!!!!" <<endl <<endl; } else { while (getline(inData,str)) { outData <<str <<endl; } outData.close(); inData.close(); ofstream out("pbook.txt",ios::out); ifstream in("temp.txt",ios::in); if (!out || !in) { cout <<endl <<"对不起不能打开文献!!!" <<endl <<endl; system("pause"); return; } while (getline(in,str)) { out <<str <<endl; } out.close();// in.close(); cout <<endl <<"这个人信息已经从你通迅录中删除!!!" <<endl <<endl; } system("pause"); } //显示所有联系人 void book::show_all() { ifstream inData("pbook.txt",ios::in); if (!inData) { cout <<endl <<"对不起!!!!没有找到文献!!!!!" <<endl; system("pause"); return; } bool flag = true; string record; while (getline(inData,record)) { if (flag) { cout <<endl <<"所有联系人信息如下:"<<endl; cout <<endl <<"姓名 电话号 性别 邮编 工作单位"<<endl; } cout <<record <<endl; flag = false; } if (flag) { cout <<endl <<"你通迅录中没有联系人!!!!!" <<endl <<endl; } else { cout <<endl <<"所有联系人已经所有显示出来!!!!!" <<endl <<endl; } system("pause"); } //修改信息 void book::alter() { ofstream outData("temp.txt",ios::out); ifstream inData("pbook.txt",ios::in);// if (!outData || !inData) { cout <<endl <<"对不起!!!!找不到文献!!!!" <<endl; system("pause"); return; } string sign; cout <<endl <<"你要修改输入姓名或电话号:"; cin >>sign; string str1; bool flag = true; string str; while (inData >>name >>number) { getline(inData,str); if ((sign==name) || (sign==number)) { cout <<endl <<"你想修改联系人:" <<endl <<endl; cout <<str1 <<endl; cout <<setiosflags(ios::left) <<setw(17) <<name <<" " <<number <<str <<endl; cout <<endl <<"请依照下面提示修改信息:" <<endl; cout <<"姓名 :" ; cin >>name; fflush(stdin); cout <<"性别 :"; cin >>sex; fflush(stdin); cout <<"电话号:"; cin >>number; fflush(stdin); cout <<"邮编 :"; cin >>post; fflush(stdin); cout <<"工作单位 :"; cin >>address; fflush(stdin); cout <<"存储日期 :"; cin >>date; fflush(stdin); save_new(); flag = false; break; } outData <<setiosflags(ios::left) <<setw(17) <<name <<" " <<number <<str <<endl; } if (flag) { cout <<endl <<"对不起!!!联系人中没你找人!!!!" <<endl <<endl; } else { while (getline(inData,str)) { outData <<str <<endl; } outData.close(); inData.close(); ofstream out("pbook.txt",ios::out); ifstream in("temp.txt",ios::in); if (!out || !in) { cout <<endl <<"对不起不能打开文献!!!" <<endl <<endl; system("pause"); return; } while (getline(in,str)) { out <<str <<endl; } out.close(); in.close(); cout <<endl <<"这个人信息已经在你通迅录中修改!!!" <<endl <<endl; } system("pause"); } //查询联系人 void book::select() { ifstream inData("pbook.txt",ios::in); if (!inData) { cout <<endl <<"对不起!!!!文献找不到!!!!" <<endl; system("pause"); return; } string sign; cout <<endl <<"输入你想查找联系人姓名或电话号码:"; cin >>sign; fflush(stdin); string str1; bool flag = true; string str; while (inData >>name >>number) { getline(inData,str); if ((name==sign) || (number==sign)) { cout <<endl <<"你要查找联系人是:" <<endl <<endl; cout <<str1 <<endl; cout <<setiosflags(ios::left) <<setw(17) <<name <<number <<str <<endl; flag = false; system("pause"); break; } } } void book::save_new() { ofstream outData("pbook.txt",ios::app); if (!outData) { cout <<endl <<"对不起!!!打开文献失败!!!!" <<endl <<endl; system("pause"); return; } outData << setiosflags(ios::left) << setw(17) << name <<" " << setw(16) << number <<" " << setw(18) << sex <<" " << setw(14) << post <<" " << setw(20) << address <<" " << setw(21) << date <<endl; outData.close(); } enum power{ADD = '1',DEL = '2',SHOW = '3',Alter = '4',Select = '5',END = '6'}; int main() { char choose; book abj; while (choose = abj.inter_face()) { switch (choose) { case ADD: abj.add_per展开阅读全文
咨信网温馨提示:1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。




专业课程设计模板电话簿.doc



实名认证













自信AI助手
















微信客服
客服QQ
发送邮件
意见反馈



链接地址:https://www.zixin.com.cn/doc/2532424.html