ImageVerifierCode 换一换
格式:DOCX , 页数:15 ,大小:91.42KB ,
资源ID:19155726      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/19155726.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(大学生软件工程C++课程设计学生选课系统Word文件下载.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

大学生软件工程C++课程设计学生选课系统Word文件下载.docx

1、学生选课系统假定有n门课程,每门课程有课程编号,课程名称,课程性质,学时,授课学时,实验或上机 学时,学分,开课学期等信息,学生可按要求(如总学分不得少于 15)自由选课。试设计一个选修课程系统,使之能提供以下功能:(1) 系统以菜单方式工作(2) 课程信息和学生选课信息录入功能(课程信息用文件保存)(3) 课程信息浏览功能(4) 查询功能(5) 按学分查询(6) 某门课程学生选修情况(可选项)3.课程设计说明书概要设计一、模块说明本系统是针对高校学生的选修课程而设计,通过本系统高校学生可以很方便地进行自由选课。 主要的功能要求是:n门课程,每门课程有课程编号,课程名称,课程性质,总学时,授课

2、学时,实 验或上机学时,学分,开课学期等信息,学生可按要求自由选课。主要要求实现的功能如下:1课程信息录入功能:能根据提示将各课程的相关信息进行输入并保存;2课程信息浏览功能:能将已经录入并保存的信息进行浏览;3查询功能:可根据不同的查询方式查询相应的课程信息。其中查询方式有按学分查询 和按课程性质查询两种;由此思路,可设计出本系统主要由一个Class类及其五个成员函数组成。课题所要求的功能由各 个函数分别得以实现。首先,在 Class类内定义了一些成员变量,用来保存课程编号,课程名称,课 程性质,总学时,授课学时,实验或上机学时,学分,开课学期等信息,还对它的成员变量进行了 声明。然后,在类

3、外,通过作用域运算符将类内声明的成员函数定义,以及进行相应的操作,以实现 相应的功能。主要包括功能要求中的五大功能,即信息输入、信息浏览、按学分查询课程、按课程 性质查询课程等。最后,在主函数中设置目录显示。用 switch瓜分不同的功能选项。系统根据用户输入的符号, 调用相应的成员函数,完成功能的实现、模块结构图询三、系统流程图详细设计各功能模块设计思路及流程图:各个功能函数的具体实现如下:1.录入函数模块:首先,创建一个文件输出流对象 outfile ,打开文件,判断文件是否存在。通过 while设一个 无限循环,当给出指定条件时退出。在循环中,调用 cout函数来提示用户输入相应的信息,

4、如课程编号、名称、课程性质、总学时、授课学时、实验或上机学时、学分、开课学期等等。将需要的课 程输入完毕之后,可根据提示再输入“ t”,即可返回主菜单,重新进行功能的选择。该流程图如下:2.浏览函数模块:该函数首先创建了输入流文件对象in file,使用语句in file.ope n(file),然后定义一个string类型的二维数组,用来保存从文本内读取的信息,用 for循环保证保存不止一门课程的信息。最后, cout输出显示所有保存的信息。流程图如下:3查找功能,即按学分查找和按课程性质查找,具体的实现如下:i.按课程性质查找:创建输入流文件对象in file,然后定义一个stri ng类

5、型的二维数组,用来保存 从文本内读取的信息,比较用户输入的字符和保存的信息中那些课程的性质相对应,将相应的课程 信息进行输出显示,ii.按课程学分查找:如果用户输入的学分与所保存的信息想对应,则将对应的课程信息输出显 示。输入“ 0”可返回主菜。4.课程设计成果各部骤操作界面如下:1.进入主菜单显示如下:2.录入课程信息并保存界面如下:Y: 10B1:nath .fiT must:64 St:60 at: 430豔饕开始信息录入 i書辅入i轉呈编 请输入课程笛晴输入总竽时 i霸鶴入諭學期】2812-2813程信息 嗟权觀开始信息录入 嚴忘退岀请选择操fl*C 世 rZ*7l : Fi E* 9

6、r3f - Irl ILJ. “ET *_ = ST UnLJ - -F J! K| yJIZi fiJ Kh JX-jI统 系 吗F;课 选 生作1兰R自也息 澹一豆耳 0_i4L/-1 j课撃出55 - 来选 t2-A0-4.查询课程信息界面如下:辰输入学分:3Q编号I容称】性质】总学时】讲授课I实验课I学分丨 开课学期1B1 n&th nust 4 30 212-2013选抒査询方iV详玻瞇类羞査询2-学分查询5.返回界面如下:弹卷奠型蛍询 蚩分矍询誌息息酬晖选a-Afi-源代码如下:#in cludeiostreamfstreamstri ngusing n amespace std;

7、class Coursepublic:void Course In put();void CourseOutput();void Fi nd();void Fin d_by_Credit(float);void Fin d_by_Ki nd(stri ng);private:int course num;stri ng course name;stri ng coursek ind;int coursehour;int teachhour;int experime nthour;float credit;stri ng courseterm;void Course:Course In put(

8、)ofstream outfile(D:f1.txt,ios:out);if(!outfile)cerr ope n error! en dl;exit(1);while(1)cout 课程信息n;按任意键开始信息录入n 输入t退出nif(getch()=t)break;coutcoursenum;请输入课程名称:coursename;请输入课程性质:coursekind;请输入总学时:coursehour;请输入授课学时:teachhour;请输入上机学时:experimenthour;请输入学分:credit; 请输入开课学期:courseterm;outfilecourse numcou

9、rse namecoursek in dcoursehourteachhourexperime nthourcreditcourseterme ndl;outfile.close();CourseOutput()ifstream in file(i n);i nfile)编号|名称| 性质|总学时|讲授课|实验课|学分| 开课学期nstring arr808;int l=0;while(!i nfile.eof()for(i nt j=0;j8;j+)in filearrlj;l+;for(int i=0;il;i+) arrij arrl0arrl1arrl2arrl3arrl4arrl5a

10、rrl6arrl7;l+;if(atof(arri6.c_str()=temp) arri0 arri1 arri2 arri3 arri4arri5arri6arri7endl;F in d_by_K in d(stri ng temp)if(arri2=temp) cout 按课程类型查询2-按学分查询0-返回int i;cin i;switch(i)case 1:请输入课程类型:nchar kind100; kind;Fin d_by_Ki nd(ki nd);case 2: 请输入学分:float c; c;Fin d_by_Credit(c);if(i=0)int mai n()Co

11、urse COURSE;欢迎来到学生选课系统n请选择操作n按1-录入课程信息按2-浏览课程信息按3-查询课程信息按0-退出系统nCOURSE.Coursel nput();COURSE.CourseOutput();case 3:COURSE.Fi nd();case 0:exit(0);return 0;5.课程设计心得这次第一次接触课程设计,最初看到题目时,感觉那五道题目都很难很难,比平时做的题目大 多了,涉及的知识点一看就很多。选题目时我选了第五道一一学生选课系统。读了好几遍题目,才 有了一点点轮廓和框架。还有其中的用到文件操作的部分,感到是最难的。刚开始时也在网上搜索 过相关题目,但每

12、个学校老师布置的课程设计题目毕竟有所不同,再者毫无思考的去照搬照抄别人 的成果也对自己毫无益处。最终我决定一定要自己亲手完成这次课程设计。经过课程设计前两天的上机实践,对于这个题目我构建出了初步的程序框架。大一后半学期都 是在学习基于对象的程序设计思想,而这就是在培养我们面对陌生的全新的程序任务时,不必为它 表面的复杂烦琐而胆怯,我们需要冷静思考出其中每一部分的构造组成及功能,然后分成模块一步 步去细分,这样只需分开去钻研每一小部分的程序内容。具体的对于我选的这道“学生选课系统”题目,我现在本子上列出来了程序需要完成的功能一-的设计。然后根据“课程”的特点赋予它编号、名称、学分等性质,这就是需

13、要在程序的类中所命 名的私有成员数据。类设计完之后,就等于说框架已经摆在面前,要对每一部分进行详细设计。对 于课程信息的录入和浏览,其实考察的是对文件的保存和打开的应用。录入模块先创建一个文件输 出流对象outfile ,打开文件,判断文件是否存在。通过 while设一个无限循环,当给出指定条件时 退出。在循环中,调用cout函数来提示用户输入相应的信息,如课程编号、名称、课程性质、总学 时、授课学时、实验或上机学时、学分、开课学期等等。二浏览模块与之类似,是创建的输入流对象 infile ; 在课程查询模块中,如按课程性质查询,先创建输入流文件对象in file,然后定义一个stri ng类

14、型的二维数组,用来保存从文本内读取的信息,比 较用户输入的字符和保存的信息中那些课程的性质相对应,将相应的课程信息进行输出显示。按学 分查询只需换一下比较对象即可。一周多的课程设计完成了一道题目,这次体验收获颇丰。这次题目的编写考察了我们对输出界 面的设计、文件的打开与保存、类的创建等重点内容。在编写过程中经历了十分难熬的阶段,因为 对程序整体的控制力不是很好,特别是程序编写完成后第一次编译时间,遇到太多不知怎么修改的 错误,而且仍有许多拼写错误,这是不应该的,也是以后应该注意改正的地方。现在感觉这些题目太不简单,也许以后再回首这些题目会是基础的内容,所以从现在开始就应 多练习一些类似的题目,把其它题目也尝试一下,我相信会对我们自身有很大的提高。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1