课程表_C课程设计.doc

上传人:罗晋 文档编号:6059947 上传时间:2020-09-02 格式:DOC 页数:16 大小:238.50KB
返回 下载 相关 举报
课程表_C课程设计.doc_第1页
第1页 / 共16页
课程表_C课程设计.doc_第2页
第2页 / 共16页
课程表_C课程设计.doc_第3页
第3页 / 共16页
课程表_C课程设计.doc_第4页
第4页 / 共16页
课程表_C课程设计.doc_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《课程表_C课程设计.doc》由会员分享,可在线阅读,更多相关《课程表_C课程设计.doc(16页珍藏版)》请在三一文库上搜索。

1、高校课程表设计1、 课程设计的的题目:高校课程表设计2、 功能说明:学生课表建立系统是学生日常生活中必不可少的实用型小工具,它对于学生平时的学习生活有着相当重要的帮助作用。便于操作、显示精确、短小实用就是它的明显特点。本次课程设计目的:通过一个课程表建立系统,使学生的学业及其他事物的时间安排更加合理,从而达到提高日常工作、学习效率。使学生掌握一门高级程序设计语言,了解面向对象程序设计的基本概念与方法,进而学会利用C+语言学会解决一般应用问题,并为后续的专业课程奠定程序设计基础。系统的基本模块:根据系统功能的要求,课程表建立系统可以分为课程信息的输入,课程表的处理及建立等模块。通过分析可以知道该

2、软件主要有以下功能模块: 学生课程名称显示 总学周时间显示 教师显示 地点显示 星期显示 一天中具体时间显示其中本次课程设计实现的档案模块又分为如下子模块: 登陆界面:主要是增加系统的人性化,使用户舒心 信息录入:主要是将课程相关信息录入 信息处理 显示项目:对学生课程信息进行处理、列表、显示。系统结构图1如下:系统用户进入课程信息输入名称教师教室总周数星期第几堂信息处理信息显示图1 系统结构图3、 类的.设计:各类的具体说明及描述 kecheng类的设计 为了实现管理系统的各功能首先定义了一个kecheng类,用来定义各种数据成员,声明这些功能函数。比如:说明为什么要这样设计setvalue

3、(),showke()等 ,同时声明一些私有成员。class kechengpublic:void setvalue();void showke();string ming16;string jiao16;string di16;int qi16;int jie16;int xing16;int tang16;关键功能的实现(1)信息的输入setvalue()函数用来输入相关信息,包括课程名称、教师名称、教室地点、课程起始周、课程结束周、上课的星期、上课的具体时间。输入一次信息之后可选择是否继续添加新的课程。此函数代码如下:1基本信息输入void kecheng:setvalue()for(i

4、nt i=0;i16;i+)cout*请输入课程名称(请简写 不要超过6个字)mingi;cout*请输入课程教师jiaoi;cout*请输入教室dii;cout*请输入课程的起始周qii;2如果输入错误,系统会自检,提示错误cout*请输入课程的结束周jiei;if(jiei20)cout输入错误! 请重新输入jiei; 3程序会对一课程多节课的现象进行处理cout*请输入课程一周有几天有s;for(int u=0;us;u+)mingi+u=mingi;jiaoi+u=jiaoi;dii+u=dii;qii+u=qii;jiei+u=jiei;cout*请输入第u+1次课是星期几xingi

5、+u; if(xingi+u7)cout输入错误! 请重新输入xingi+u; cout*请输入课程是第几堂tangi+u; if(tangi+u5) cout输入错误! 请重新输入tangi+u;i=i+s;4输完一门课程之后,系统会自动提示是否进行下一课程的输入cout*请问是否继续下一个课程?(Y/N)num;if(num=Y|num=y) continue;else break;(2)信息的处理与输出showke()函数,此部分用来实现课程相关信息的排序,包括表格的建立与信息的对应输出,此函数用来显示课程表的界面,用了一些“”号建立表格,在程序重的最后,通过for 来实现整个程序的循环

6、,并且使用了switch选择分支结构,使功能更容易实现。1 基本课表表头的输出此函数代码如下:void kecheng:showke()cout /endl;cout /课 程 表/endl;cout /endl;cout_endl;cout | 一 | 二 | 三 | 四 | 五 | 六 | 日 | endl; cout_endl;2 对一天时间(110节)的格式输出此函数代码如下:for(int i=1;i6;i+)int l;switch(i)case 1:cout一(1-2) |;break; case 2:cout二(3-4) |;break; case 3:cout三(5-6) |

7、;break; case 4:cout四(7-8) |;break; case 5:cout五(9-10) |;break;3 循环输出课程信息,这里采用双循环,用于控制表格位置的对号输出及信息的循环输出此函数代码如下:for(int j=1;j8;j+)l=0;for(int n=0;n16;n+)if(tangn=i&xingn=j)coutsetw(12)mingn|;l=1;if(l=0) cout |;coutendl;cout | ; cout_7)cout输入错误! 请重新输入xingi+u; 结束语经过1周多的设计和开发,学生课程表建立基本开发完毕。其功能基本符合用户需求,能够

8、完成信息完整输入以及各类报表的打印。对于数据的一致性的问题也通过程序进行了有效的解决。 但是由于课程设计时间较短,所以该系统还有许多不足之处:比如 系统维护功能,还不能让用户进行数据备份和恢复;用户界面不够美观;这些都有待进一步改善。附录: 要注释源程序清单#include#include#includeusing namespace std;class kecheng /模块一public: /公有数据void setvalue(); /输入函数void showke(); /处理、输出函数string ming16; /课程名string jiao16; /教师名string di16;

9、/教室地点int qi16; /课程起始周int jie16; /课程结束周int xing16; /星期int tang16; /第几堂; void kecheng:setvalue() /模块二for(int i=0;i16;i+) /for循环控制输入cout*请输入课程名称(请简写 不要超过6个字)mingi;cout*请输入课程教师jiaoi;cout*请输入教室dii;cout*请输入课程的起始周qii;if(qii20) cout输入错误! 请重新输入qii; /重新输入 cout*请输入课程的结束周jiei;if(jiei20) /错误判断cout输入错误! 请重新输入jiei

10、; /重新输入 cout*请输入课程一周有几天有s; /输入节数for(int u=0;us;u+) /for循环控制多节输入mingi+u=mingi;jiaoi+u=jiaoi;dii+u=dii;qii+u=qii;jiei+u=jiei;cout*请输入第u+1次课是星期几xingi+u; if(xingi+u7)cout输入错误! 请重新输入xingi+u; cout*请输入课程是第几堂tangi+u; if(tangi+u5) cout输入错误! 请重新输入tangi+u;i=i+s;cout*请问是否继续下一个课程?(Y/N)num;if(num=Y|num=y) continu

11、e; /继续下一个else break; /结束输入void kecheng:showke() /模块三cout /endl; /课表的页眉cout /课 程 表/endl;cout /endl;cout_endl;cout | 一 | 二 | 三 | 四 | 五 | 六 | 日 | endl; cout_endl;for(int i=1;i6;i+)int l; /用l来检测此项是否有内容输出switch(i) /课表的一天节数 输出case 1:cout一(1-2) |;break; case 2:cout二(3-4) |;break; case 3:cout三(5-6) |;break;

12、 case 4:cout四(7-8) |;break; case 5:cout五(9-10) |;break;for(int j=1;j8;j+)l=0;for(int n=0;n16;n+)if(tangn=i&xingn=j)coutsetw(12)mingn|; /课名输出l=1;if(l=0) cout |; /若没有则输出空格coutendl;cout | ;for( j=1;j8;j+)l=0;for(int n=0;n16;n+)if(tangn=i&xingn=j)coutsetw(10)jiaon | ; /教师输出l=1;if(l=0) cout | ; /若没有则输出空格

13、coutendl;cout | ; for( j=1;j8;j+)l=0;for(int n=0;n16;n+)if(tangn=i&xingn=j)coutsetw(11)din| ; /地点输出l=1;if(l=0) cout | ; /若没有则输出空格coutendl;cout |;for( j=1;j8;j+)l=0;for(int n=0;n16;n+)if(tangn=i&xingn=j)cout (setw(2)qin -setw(2)jien)周 ; /总周数输出cout|;l=1;if(l=0) coutsetw(12) ; /若没有则输出空格cout|;coutendl; cout_endl;int main() /模块四cout*欢迎使用课程表建立系统 -*endlendl; /系统进入kecheng ke;cout * 请输入相关课程信息*endlendl;ke.setvalue(); /若没有则输出空格用ke.showke();return 0;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1