欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    c++家具管理系统报告书及程序设计(共19页).docx

    • 资源ID:19363571       资源大小:238.07KB        全文页数:19页
    • 资源格式: DOCX        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    c++家具管理系统报告书及程序设计(共19页).docx

    精选优质文档-倾情为你奉上C+语言程序设计项目书家具管理系统程序设计华中科技大学土木学院道路桥梁与渡河工程1001班 小组设计方案2011-7-1 目 录一 设计目的 3二 课程设计的内容 3三 课程设计的要求与数据 3四 课程设计应完成的工作 4 五 总体设计(包含几大功能模块)5六 详细设计(各功能模块的具体实现算法流程图)5 七 调试分析(包含各模块的测试用例,及测试结果)6 7.1 源程序 67.2 调试与测试 13 八 总结 16九 成员设计内容 18十 参考资料 19 一、设计目的 (1)要求学生达到熟练掌握C+语言的基本知识和技能; (2)基本掌握面向对象程序设计的基本思路和方法; (3)能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题。(4)进一步加深、巩固所学课程(C+语言程序设计)的基本理论知识,理论联系实际,进一步培养自己综合分析问题和解决问题的能力。掌握运用C+语言独立地编写、调试应用程序和进行其它相关设计的技能。二、课程设计的内容 某家具商店现有家具若干,类型包括椅、桌、柜和床等。要求对所有的库存家具都能按照名称或编号进行显示、查找、增加和删除、保存的功能。学习相关开发工具和应用软件,熟悉系统建设过程。 三 课程设计的要求与数据1. 用C+实现系统(1)要求利用面向对象的方法以及C+的编程思想来完成系统的设计;(2)要求在设计的过程中,建立清晰的类层次; (3)功能用菜单实现 ; (4)数据的输入输出可根据用户选择,从文件或键盘输入。(5)提交项目源码(带注释)和报告,报告包括设计思路,系统功能,调试过程,程序代码,项目总结。2. 对家具(包括椅子,桌子,柜子和床等)进行管理,以及对所有的库存家具都能按照名称或编号进行显示、查找、增加和删除、保存。3. 家具信息包括:其内容较多,为了简化讨论,要求设计的管理系统能够完成以下功能:(1) 记录各家具的名称或编号(2) 查找功能(3) 增加功能(4) 删除功能(5) 保存功能4.在基本要求达到后,可进行创新设计。例如加入类的派生和新的属性及功能等四、课程设计应完成的工作(1)编写算法;(2)算法测试,并有具体的测试结果和结果分析;(3)撰写课程设计报告。内容包括:1) 封面扉页 2) 设计任务书3) 目录4) 总体设计方案(包括流程图)5) 使用说明及运行实例(包括界面)6) 成员设计内容简介7) 项目源程序代码(注意注释的使用)8) 课程设计心得9) 指导教师评语五、总体设计(包含几大功能模块)l 名称输入功能l 查找功能l 增加功能l 删除功能l 保存功能六 详细设计(各功能模块的具体实现算法流程图) 结束开始输出菜单根据菜单输入n的值选择程序输入退出输出保存编号名称删除增加查找七 调试分析(包含各模块的测试用例,及测试结果) 7.1 源程序#include <iostream>#include <fstream>#include <list>using namespace std;/家具类class Jiaju /家具的信息protected: char Miaosu10; public: char Bianhao10; char Mingcheng10; /构造函数 Jiaju() strcpy(Miaosu,"家具"); /从文件导入信息函数 void FromFile(fstream& fs) fs.read(char*)Bianhao,sizeof(char)*10); fs.read(char*)Mingcheng,sizeof(char)*10); fs.read(char*)Miaosu,sizeof(char)*10); /向文件导出信息函数 void ToFile(fstream& fs) fs.write(Bianhao,sizeof(char)*10); fs.write(Mingcheng,sizeof(char)*10); fs.write(Miaosu,sizeof(char)*10); /显示函数 friend ostream& operator<<(ostream& os,const Jiaju& jia) os<<"编号:"<<jia.Bianhao<<", " <<"名称:"<<jia.Mingcheng<<"," <<"描述:"<<jia.Miaosu<<endl; return os; ;/椅子类class Yizi:Jiajupublic: Yizi() strcpy(Miaosu,"椅子"); ;/桌子类class Zhuozi:Jiajupublic: Zhuozi() strcpy(Miaosu,"桌子"); ;/柜子类 class Guizi:Jiajupublic: Guizi() strcpy(Miaosu,"柜子"); ;/床类class Chuang:Jiajupublic: Chuang() strcpy(Miaosu,"床"); ;/家具店类class JiajuDian /家具列表 list<Jiaju> JiajuList; public: /添加家具函数 void AddJiaju() Jiaju* jj; char ccc20; int ch; cout<<"请选择家具类型:t1.椅类t2.桌类t3.柜类t4.床类"<<endl; cin>>ch; switch(ch) case 1: jj=(Jiaju*)new Yizi(); break; case 2: jj=(Jiaju*)new Zhuozi(); break; case 3: jj=(Jiaju*)new Guizi(); break; case 4: jj=(Jiaju*)new Chuang(); break; default: jj=new Jiaju(); break; cout<<"输入编号:"<<endl; cin>>ccc; strcpy(jj->Bianhao,ccc); cout<<"输入名称:"<<endl; cin>>ccc; strcpy(jj->Mingcheng,ccc); JiajuList.push_back(*jj); delete jj; /显示列表函数 void Show() list<Jiaju>:iterator it; int i; for(i=0,it=JiajuList.begin();it!=JiajuList.end();+it,+i) cout<<"-"<<i<<"-"<<*it<<endl; /保存列表函数 void ToFile(fstream& fs) list<Jiaju>:iterator it; int i=0; for(it=JiajuList.begin();it!=JiajuList.end();+it) i+; fs.write(char*)&i,sizeof(int)*1); for(it=JiajuList.begin();it!=JiajuList.end();+it) Jiaju* jj=&(*it); jj->ToFile(fs); /载入列表函数 void FromFile(fstream& fs) int n; fs.read(char*)&n,sizeof(int)*1); int i; JiajuList.clear(); for(i =0;i<n;i+) Jiaju jj; jj.FromFile(fs); JiajuList.push_back(jj); /加载文件函数 void Load() fstream fs; fs.open("1.dat",ios_base:in|ios_base:binary); if(fs.is_open() FromFile(fs); fs.close(); Show(); else cout<<"File Open Error."<<endl; /保存文件 void Save() fstream fs; fs.open("1.dat",ios_base:out|ios_base:binary); if(fs.is_open() ToFile(fs); fs.close(); else cout<<"File Open Error."<<endl; /增加家具功能 void Insert() AddJiaju(); cout<<"家具表已更新"<<endl; Show(); /删除家具功能 void Delete() cout<<"请输入删除的位置:"<<endl; int n; cin>>n; list<Jiaju>:iterator it; int i=0; bool sch=false; for(it=JiajuList.begin();it!=JiajuList.end();+it) if(i=n) /Jiaju jj=*it; JiajuList.erase(it); sch=true; break; i+; if(sch) cout<<"家具表已更新"<<endl; Show(); else cout<<"删除失败"<<endl; /查找家具功能 void Find() cout<<"请选择:1.按编号查找t2.按名称查找n" int ch; cin>>ch; char xinxi20; cout<<"你要查找的是:" cin>>xinxi; bool found=false; list<Jiaju>:iterator it; for(it=JiajuList.begin();it!=JiajuList.end();+it) Jiaju* jj=&(*it); if(ch=1 && strcmp(jj->Bianhao,xinxi)=0) cout<<*jj<<endl; found=true; if(ch=2 && strcmp(jj->Mingcheng,xinxi)=0) cout<<*jj<<endl; found=true; if(!found) cout<<"没有匹配的项目"<<endl; /功能函数 void Run() cout<<"家具店n" Load(); int ch=1; while(ch) cout<<"请选择功能:n1.查找t2.增加t3.删除t0.保存退出" cin>>ch; switch(ch) case 1: Find(); break; case 2: Insert(); break; case 3: Delete(); break; default: Save(); break; system("PAUSE"); ;main()JiajuDian j;j.Run();7.2 调试与测试主要程序运行结果运行开始选择1.查找选择1.按编号查找 第十三页查找1选择2.按名称查找输入zhuozi 选择功能2选择功能3选择功能0较完整的编译 八 总结 由于本课题中的许多知识点都没有学过都要靠自己到课外的资料中去查找。在用的时候难免出现这样那样的错误。如开始设计出来的菜单不是预想的那样,而是总个窗中出现混乱。解决的这个问题的办法是调整。一个系统的菜单和提示信息非常重要。如果没有这些用户 根本不知道怎么用你设计的这个系统。在设计的调试过程中也无法顺利的完成调试工作。有了一个清晰简单的菜单和一些提示信息这后,调试过程完成的非常顺利。回顾起此次课程设计,我感慨颇多,的确,从拿到题目到完成整个编程,从理论到实践,在整整两个礼拜的日子里,可以学到很多很多的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我们懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,比如说结构体通过这次课程设计之后,一定把以前所学过的知识熟悉了,本次课程设计结束了,我们通过这次实践学到了许多知识。学到了设计一个简单的系统。要注意哪些方面。也使我们知道自己哪些方面做得还不够。这不仅是程序设计,更是锻炼我们处理问题的能力,同时也使我们了解到团队合作的可贵.编写程序是件细心活,稍不留神就会出错,这就必须要求我们对待事情要认真!在编写程序的过程中,错误不断出现,不同的类型(如少写了一个符号,写错了字母,用错了函数等等)层出不穷,这考验我们待事细心,耐心,能不能坚持到底,不能半途而废。 但我们总结出了一点点的经验如下:1、要对系统的功能和要求做出详细的分析,并合理分解任务。2、把分解出来的子任务,做给一个相对独立的模块。3、在设计一个模块之前,要简单构想一下总界面的显视情况。4、针对构想出来的界面进行程序的编写。九 成员设计内容小组成员信息 学号 姓名 一 U2010 *(组长)U20101* *(组员)U20101* *(组员)U20101* *(组员)U20101*( *(组员)U20101* *(组员)U20101* *(组员)U20101* *(组员) 总体设计(包括设计流程、模块函数原型接口设计以及重要模块的程序设计,以及模块组装调试,), 此次项目所有成员都参与进来,包括设计程序及设计报告形式十 参考资料1中南大学C+语言课程设计 2 网上相关资料3C+程序设计教材4大学计算机基础5华中科技大学教学资料 后记:小组成员经过2个星期 的探讨及从网上查阅资料,终于完成了此次程序设计,感谢指导老师*一学期来的教导。专心-专注-专业

    注意事项

    本文(c++家具管理系统报告书及程序设计(共19页).docx)为本站会员(飞****2)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开