C++项目设计说明书.docx
- 文档编号:8418225
- 上传时间:2023-01-31
- 格式:DOCX
- 页数:25
- 大小:514.03KB
C++项目设计说明书.docx
《C++项目设计说明书.docx》由会员分享,可在线阅读,更多相关《C++项目设计说明书.docx(25页珍藏版)》请在冰豆网上搜索。
C++项目设计说明书
C++项目设计说明书
项目名称:
教师课程管理系统
船舶与海洋工程学院
船海1102班
组长:
李志豪
组员:
陈伟、龙晨曦、秦东峰、卢泽、闫文龙
日期:
2012年6月26日
一、序言及摘要…………………………………………3
二、目的和要求…………………………………………4
三、人员分工……………………………………………5
四、程序代码……………………………………………5
五、数据结构表…………………………………………16
六、功能模块图…………………………………………16
七、运行及调试…………………………………………16
八、总结…………………………………………………23
一、序言及摘要
序言
随着学校规模的扩大与政府人才流动机制的变化,学校教师的人数逐渐增加,而其流动率也在逐年增加,以往手工管理信息的方式显得力不从心,不能满足学校对教师信息管理的要求,为此,本系统从信息的采集,加工,查询,修改等方面入手,对教师信息的自动化管理作了一些探索,可以让管理人员从繁重琐碎的案头工作解脱出来,去完成更重要的工作。
在本次课程设计当中,我们组的课题就是设计“教师课程管理系统”的仿真软件。
通过设计任务书中的要求以及介绍,大致确定了主要的目的是:
学习和掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能。
为了更好的完成此次课程设计,我首先了解了教师课程的
管理结构,制订了合理的方案,然后设计出大体的框架,接下来将各个部分慢慢的扩充起来,然后完成了大致的雏形,并通过不断地测试和调试,完成了最终的成品。
最后,经过自己的一番努力以及指导老师的悉心指导,终于完成了此方针软件的设计,通过这次课程设计,我基本了解并且学习了如何分析研究数据对象的特性、数据的组织方法、如何选取合适的数据逻辑结构和存储结构。
这对以后的学习都有着很大的帮助。
摘要
本管理系统基本上能够满足教师课程管理系统需求。
教师课程管理系统中使用了各种表格,保存相关的编号、名称、类型等信息,方便查询,浏览,修改等操作。
本系统结合实际的情况,经过实际的需求分析,采用功能强大的VC++作为开发工具开发出来的教师课程管理系统。
本文首先分析了教师课程管理的应用现状,阐述了本管理系统的开发目的。
通过对一系列问题的分析,确定了系统的开发平台。
接着详细给出了从教师课程的类型、教师编号等管理系统分析到总体设计详细设计与实现及测试的各个环节,最后对本次课程设计作出了总结。
本系统以VisualC++6.0为平台,使用C++编程语言编写实现,包含类、指针、文件保存、循环变量、分支结构等基础知识
二、目的和要求
1、目的:
(1)要求学生达到熟练掌握C++语言的基本知识和技能;
(2)基本掌握面向对象程序设计的基本思路和方法;
(3)能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题。
2、基本要求:
(1)要求利用面向对象的方法以及C++的编程思想来完成系统的设计;
(2)要求在设计的过程中,建立清晰的类层次;
3、创新要求:
在基本要求达到后,可进行创新设计,如根据查找结果进行修改的功能及设计出比较友好的界面等。
三、人员分工
组长李志豪负责分配任务,督促组员,检查工作进展情况,以及编写main函数和AddCourse函数;
组员陈伟负责编写course类和FindCourse1、2和ChangeCourse1、2函数以及对整个程序的调试,找错;
组员秦东峰负责程序界面美化和编写DeletCourse1、2函数;
组员卢泽、闫文龙负责编写程序说明书,DisAll函数和Save函数。
所有组员在编写过程中都认真负责,体现出了团结的力量,每个都有明确分工,都参与了项目报告的撰写,达到了预期团队合作的效果。
四、程序代码
1.主函数
voidmain()
{
stringc,t;
intkey;
key=1;
cout< cout<<"^_^------------------------------------------^_^"< cout<<""< cout<<"<欢迎进入教师课程管理系统! >"< cout<<""< cout<<"^_^------------------------------------------^_^"< cout<<"感谢使用本教师课程管理系统"< cout<<"制作人员"< cout<<"组长: 李志豪"< cout<<"组员: 陈伟、龙晨曦、秦东峰、卢泽、闫文龙"< while(key) { cout< cout<<"请选择您的操作: "< cout<<"1.增加信息;"< cout<<"2.修改信息;"< cout<<"3.删除所有信息;"< cout<<"4.查找信息;"< cout<<"5.显示所有信息;"< cout<<"6.保存信息;"< cout<<"0.退出;"< cout<<"请选择按键(0-6): "; cin>>key; cout< if(key>=0&&key<=6) { switch(key) { case1: AddCourse(); break; case2: intm; cout<<"请选择修改方式: 由课程名称-1,由教师编号-2: "; cin>>m; cout< if(m==1)ChangeCourse1(); elseChangeCourse2(); break; case3: intk; cout<<"请选择删除方式: 由课程名称-1,由教师编号-2: "; cin>>k; cout< if(k==1)DeletCourse1(); elseDeletCourse2(); break; case4: intl; cout<<"请选择查询方式: 由课程名称-1,由教师编号-2: "; cin>>l; cout< if(l==1){cout<<"请输入要查找的课程名: ";cin>>c;cout< else{cout<<"请输入要查找的教师编号: ";cin>>t;cout< break; case5: DisAll(); break; case6: Save(); break; case0: cout<<"感谢使用本教师课程管理系统"< cout<<"制作人员"< cout<<"组长: 李志豪"< cout<<"组员: 陈伟、龙晨曦、秦东峰、卢泽、闫文龙"< break; } } else { cout<<"数字输入错误,请按要求重新输入! "< break; } } } 2.course类 classcourse { stringCname; stringType; intCclass; intCtime; intCpay; stringTname; stringTnum; stringCnum; intCnumber; public: course(); course(stringcname,stringtype,intcclass,intctime,intcpay,stringtname,stringtnum,stringcnum,intcnumber); ~course(){}; intgettpay(); voidDis(); stringgetcname(); stringgettnum(); stringgettype(); intgetcclass(); intgetctime(); intgetcpay(); stringgettname(); stringgetcnum(); intgetcnumber(); intgetcrnum(); voidSet(); }; course: : course(){Cname="\0";Type="\0";Cclass=0;Ctime=0;Cpay=0;Tname="\0";Tnum="\0";Cnum="\0";Cnumber=0;} course: : course(stringcname,stringtype,intcclass,intctime,intcpay,stringtname,stringtnum,stringcnum,intcnumber) { Cname=cname; Type=type; Cclass=cclass; Ctime=ctime; Cpay=cpay; Tname=tname; Tnum=tnum; Cnum=cnum; Cnumber=cnumber; } intcourse: : gettpay() { if((Cname=="专业基础课")||(Cname=="专业课"))returnCpay*1.2*Cnumber; elseif(Cname=="公共基础课") { if(Cnumber<=3)returnCpay*Cnumber; elseif((Cnumber>3)&&(Cnumber<7))returnCpay*1.1*Cnumber; elsereturnCpay*1.2*Cnumber; } elsereturnCpay*Cnumber; } voidcourse: : Dis() { cout<<"课程名称: "; cout< cout<<"课程级别: "; cout< cout<<"课程类别: "; cout< cout<<"课程学时: "; cout< cout<<"基本课酬: "; cout< cout<<"老师名称: "; cout< cout<<"老师编号: "; cout< cout<<"班级编号: "; cout< cout<<"班级数: "; cout< cout<<"老师课酬: "; cout< } stringcourse: : getcname(){returnCname;} stringcourse: : gettnum(){returnTnum;} stringcourse: : gettname(){returnTname;} stringcourse: : getcnum(){returnCnum;} intcourse: : getcpay(){returnCpay;} stringcourse: : gettype(){returnType;} intcourse: : getcclass(){returnCclass;} intcourse: : getcnumber(){returnCnumber;} intcourse: : getctime(){returnCtime;} voidcourse: : Set(){Cname="\0";Tnum="\0";} 3.各功能函数 voidAddCourse() { n++; stringcname; stringtype; intcclass; intctime; intcpay; stringtname; stringtnum; stringcnum; intcnumber; cout<<"请输入课程名称: "; cin>>cname; cout< cout<<"请输入课程类别(公共基础课、专业基础课、专业课和公选课): "; cin>>type; cout< cout<<"请输入课程级别: "; cin>>cclass; cout< cout<<"请输入学时: "; cin>>ctime; cout< cout<<"请输入基本课酬: "; cin>>cpay; cout< cout<<"请输入老师名称: "; cin>>tname; cout< cout<<"请输入老师编号: "; cin>>tnum; cout< cout<<"请输入所授课班编号: "; cin>>cnum; cout< cout<<"请输入班级数: "; cin>>cnumber; cout< courseC(cname,type,cclass,ctime,cpay,tname,tnum,cnum,cnumber); A[n-1]=C; cout<<"信息添加成功,所添加信息如下: "< A[n-1].Dis(); cout<<"如果要修改,请在下面菜单进行"< } voidFindCourse1(stringcname) { for(i=0;i<100;i++) { if((A[i].getcname())==cname){cout<<"找到课程,信息如下: "< elsecout<<"你所查找的课程不存在或已删除! "< } } voidFindCourse2(stringtnum) { for(i=0;i<100;i++) { if((A[i].gettnum())==tnum){cout<<"找到课程,信息如下: "< elsecout<<"你所查找的课程不存在或已删除! "< } } voidChangeCourse1() { stringcname; stringtype; intcclass; intctime; intcpay; stringtname; stringtnum; stringcnum; intcnumber; cout<<"请输入要修改的课程名称: "; cin>>cname; cout< FindCourse1(cname); cout<<"请输入修改后的信息: "< cout<<"请输入课程名称: "; cin>>cname; cout< cout<<"请输入课程类别: "; cin>>type; cout< cout<<"请输入课程级别: "; cin>>cclass; cout< cout<<"请输入学时: "; cin>>ctime; cout< cout<<"请输入基本课酬: "; cin>>cpay; cout< cout<<"请输入老师名称: "; cin>>tname; cout< cout<<"请输入老师编号: "; cin>>tnum; cout< cout<<"请输入所授课班编号: "; cin>>cnum; cout< cout<<"请输入班级数: "; cin>>cnumber; cout< courseB(cname,type,cclass,ctime,cpay,tname,tnum,cnum,cnumber); A[i]=B; cout<<"信息已修改! "< cout<<"修改结果如下: "< A[i].Dis(); } voidChangeCourse2() { stringcname; stringtype; intcclass; intctime; intcpay; stringtname; stringtnum; stringcnum; intcnumber; cout<<"请输入要修改的课程的教师编号: "; cin>>tnum; cout< FindCourse2(tnum); cout<<"请输入修改后的信息: "< cout<<"请输入课程名称: "; cin>>cname; cout< cout<<"请输入课程类别: "; cin>>type; cout< cout<<"请输入课程级别: "; cin>>cclass; cout< cout<<"请输入学时: "; cin>>ctime; cout< cout<<"请输入基本课酬: "; cin>>cpay; cout< cout<<"请输入老师名称: "; cin>>tname; cout< cout<<"请输入老师编号: "; cin>>tnum; cout< cout<<"请输入所授课班编号: "; cin>>cnum; cout< cout<<"请输入班级数: "; cin>>cnumber; cout< courseB(cname,type,cclass,ctime,cpay,tname,tnum,cnum,cnumber); A[i]=B; cout<<"信息已修改! "< cout<<"修改结果如下: "< A[i].Dis(); } voidDeletCourse1() { stringcname; cout<<"请输入要删除的课程名称: "; cin>>cname; cout< FindCourse1(cname); A[i].Set(); cout<<"该课程已删除! "< } voidDeletCourse2() { stringtnum; cout<<"请输入要删除的课程的教师编号: "; cin>>tnum; cout< FindCourse2(tnum); A[i].Set(); cout<<"该课程已删除! "< } voidDisAll() { cout<<"所有课程信息如下: "< for(i=0;i<100;i++) { if((A[i].gettnum())=="\0")continue; elseA[i].Dis(); cout<<"*****************************************************"< } } voidSave() { ofstreamofile; ofile.open("d: \\myfile.txt"); for(i=0;i<100;i++) { if((A[i].gettnum())=="\0")continue; else {ofile<<"课程名称: "; ofile< ofile<<"课程级别: "; ofile< ofile<<"课程类别: "; ofile< ofile<<"课程学时: "; ofile< ofile<<"基本课酬: "; ofile< ofile<<"老师名称: "; ofile< ofile<<"老师编号: "; ofile< ofile<<"班级编号: ";
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+ 项目 设计 说明书
![提示](https://static.bdocx.com/images/bang_tan.gif)