资源预览内容
第1页 / 共10页
第2页 / 共10页
第3页 / 共10页
第4页 / 共10页
第5页 / 共10页
第6页 / 共10页
第7页 / 共10页
第8页 / 共10页
第9页 / 共10页
第10页 / 共10页
亲,该文档总共10页全部预览完了,如果喜欢就下载吧!
资源描述
第 1 页 共 10 页湖南文理学院国际学院C+程序设计课程设计指导书(本科)一、课程设计目的通过设计设计一个小的系统,进一步熟悉 C中类的概念、类的封装、继承的实现方式。了解系统开发的需求分析、类层次设计、模块分解、编码测试、模块组装与整体调试的全过程,加深对 C的理解与 Visual C环境的使用;逐步熟悉程序设计的方法,并养成良好的编程习惯。二、文档要求(见课程设计_格式):1、系统总框图;2、每个模块的设计分析(包括流程图、功能说明、运行界面等) ;3、列出所有定义的类、函数及说明;4、举例说明 1、2 个比较有特点的算法;5、存在的问题与不足及对策,心得体会;6、程序源代码须有注释;7、如多人同组做的,个人报告中只能写自己所负责的工作部分;8、详见附件。三、 系统要求:1、所写的有效代码不得少于 300 行,并用 A4 幅面的纸打印;2、实现数据在硬盘上的文件读写;3、不能重复选题。四、成绩评定方法: 根据课程设计完成的质量、正确性与工作量综合评分,具体如下:1、 文档:50%2、 程序:50%五、时间与安排时间为一周(18 周) ,粗略划分: 第一天布置任务及分组、总体需求分析与设计; 第二天 基类、各派生类设计及代码实现; 第三天各模块的编程设计;各模块的调试与修改、系统组装; 第四天程序总调试、修改, 撰写课程设计报告 第五天 课程设计检查,打印提交六、设计题目第 2 页 共 10 页题目一:小型公司工资管理系统设计(限最多 2 人完成)设计说明与要求:1、 公司主要有 4 类人员:经理、技术员、销售员、销售经理。要求存储这些人的职工号、姓名、月工资、岗位、年龄、性别等信息。2、 工资的计算办法:A、 经理:固定月薪为 8000; B、 技术员:工作时间小时工资(100 元每小时) ;C、 销售员:销售额4%提成;D、 销售经理:底薪(5000)所辖部门销售额总额0.5%;3、 类的层次结构大体如下:雇员类技术员类 经理类 销售员类销售经理类4、 输入数据要求每类人员不能少于 4 人,并按以下格式输出:职工号 姓名 性别 年龄 岗位 工资 排名及某销售经理所辖部门各销售员的业绩及自己的工资表:5、 总体设计,要有一个菜单,用于选择各项功能,其中1) 数据录入:输入各种数据;2) 数据统计:各销售经理的工资计算及最终按工资进行的冒泡排序;3) 数据打印:打印上述表格;4) 数据备份:把相关数据写入文件;5) 退出:退出本系统;注:各项菜单都调用一个函数来实现。题目二:考勤管理系统(限最多 2 人完成)职工号 姓名 销售额销售额合计:第 3 页 共 10 页考勤信息记录了学生的缺课情况,它包括:缺课日期、第几节课、课程名称、学生姓名、缺课类型(迟到、早退、请假及旷课) 。试设计一考勤管理系统,使之能提供以下功能:1录入学生的缺课记录; 2修改某个学生的缺课记录; 3查询某个学生的缺课情况;4统计某段时间内,旷课学生姓名及旷课次数,按旷课次数由多到少排序;5统计某段时间内,有学生旷课的课程及旷课人次,按旷课人次由多到少排序; 6系统以菜单方式工作。 具体要求如下: 1、 采取模块化方式进行程序设计,要求程序的功能设计、数据结构设计及整体结构设计合理。学生也可根据自己对题目的理解增加新的功能模块(视情况可另外加分) 。2、 系统以菜单界面方式(至少采用文本菜单界面,如能采用图形菜单界面更好)工作,运行界面友好,演示程序以用户与计算机的对话方式进行。 3、 程序算法说明清晰,理论分析与计算正确,运行情况良好,实验测试数据无误,容错性强(能对错误输入进行判断控制) 。 4、 编程风格良好(包括缩进、空行、适当注释、变量名与函数名见名知意,程序容易阅读等) ;题目三、职工信息表(限最多 2 人完成)设计要求:设计要求实现如下功能:(1)建立职工信息数据,包括职工编号、姓名、性别、工资、出生时间、参加工作时间与年龄(必须计算得到) 。(2)根据职工信息表,建立只含有姓名与年龄的职工信息简表。 (可选功能)(3)使用继承的方法构造 3 个类, (即雇员类虚基类,教师类与工人类派生类)使用相应的对象放置 10 个职工信息。(4)编写同名 display()成员函数,用来输出数组的内容。(5)按不同类别输出职工信息,比如按系输出教师信息。 (可选功能)(6)要求对“”与“”运算符进行重载。考虑到输人职工编号时,也会因不小心引人空格,而且名字中也需要有空格,所以重载“ 运算符时,需要满足这个要求。(7)抽取并计算职工的平均年龄。(8)检索(查找)指定信息。 (如按姓名检索、按年龄检索)(9)显示年龄分布的柱状图,示例如下:(10)参考界面如下:设计功能:增加一位教师记录增加一位工人记录第 4 页 共 10 页显示全部职工记录计算教师平均年龄计算工人平均年龄删除一个教师删除一个工人按系输出教师信息(可选)按姓名检索所有信息结束程序运行题目四、学生信息管理(限最多 2 人完成)设计要求:设计要求实现如下功能:(1)建立学生信息数据,包括学号、姓名、性别、三科成绩、出生时间、年龄(必须计算得到) 。(2)使用继承的方法构造至少 3 个类, (即学生类虚基类,一年级学生与二年级学生类派生类)使用相应的对象放置 10 个学生信息。(3)编写同名 display()成员函数,用来输出数组的内容。(4)按不同类别输出学生信息,比如按性别。 (可选功能)(5)要求对“”与“”运算符进行重载。考虑到输人学号时,也会因不小心引人空格,而且名字中也需要有空格,所以重载“ 运算符时,需要满足这个要求。(6)抽取并计算学生的平均成绩。(7)按照至少一科成绩进行排序。(8)检索(查找)指定信息。 (如按姓名检索、按年龄检索)(9)显示成绩分布的柱状图,示例如下:(10)参考界面如下:设计功能:增加学生显示全部学生计算平均成绩删除一个学生按年级输出学生信息按性别输出学生信息按姓名检索学生结束程序运行题目五:图书信息管理系统设计(限最多 2 人完成)图书信息包括:登录号、书名、作者名、分类号、出版单位、出版时间、价格等。试设计一图书信息管理系统,使之能提供以下功能:第 5 页 共 10 页系统以菜单方式工作1) 图书信息录入功能(图书信息用文件保存)输入2) 图书信息浏览功能输出3) 查询与排序功能:(至少一种查询方式)算法4) 按书名查询5) 按作者名查询6) 图书信息的删除与修改(可选项)题目六、学生选修课程系统设计(限最多 2 人完成)假定有 n 门课程,每门课程有课程编号,课程名称,课程性质,总学时,授课学时,实验或上机学时,学分,开课学期等信息,学生可按要求(如总学分不得少于 60)自由选课。试设计一选修课程系统,使之能提供以下功能:1)系统以菜单方式工作2)课程信息录入功能(课程信息用文件保存)输入3)课程信息浏览功能输出4)查询功能:(至少一种查询方式)算法5)按学分查询6)按课程性质查询7)学生选修课程(可选项)题目七:学生通讯系统(限最多 2 人完成)基本功能:以本班同学的具体数据为背景,设计一个本班同学通讯录。实现功能:1) 通讯录编辑(添加、删除) 。2) 按不同的项进行查找。3) 对已存在的通讯录按不同的项排序。4) 将通讯录写入文件5) 从文件读入通讯录备注:通讯录至少应该有以下数据项:姓名,地址,电话,邮编,E-mail。题目八:成绩管理系统 (限最多 2 人完成)现有学生成绩信息,内容如下姓名 学号 语文 数学 英语 张明明 01 67 78 82李成友 02 78 91 88张辉灿 03 68 82 56王露 04 56 45 77第 6 页 共 10 页陈东明 05 67 38 47. . . . 请用 C/C+编写一系统,实现学生信息管理,软件的入口界面应包括如下几个方面:(一)功能要求:(1) 信息维护:要求:学生信息数据要以文件的形式保存,能实现学生信息数据的维护。此模块包括子模块有:增加学生信息、删除学生信息、修改学生信息(2) 信息查询:要求:查询时可实现按姓名查询、按学号查询(3) 成绩统计:要求:A 输入任意的一个课程名(如数学)与一个分数段(如 60-70) ,统计出在此分数段的学生情况。(4) 排序:能对用户指定的任意课程名,按成绩升序或降序排列学生数据并显示排序结果(使用表格的形式显示排序后的输出结果) (使用多种方法排序者,加分)(二)其它要求:(1) 只能使用 C/C+语言,源程序要有适当的注释,使程序容易阅读(2) 至少采用文本菜单界面(如果能采用图形菜单界面更好)(3) 学生可自动增加新功能模块(视情况可另外加分)(4)写出课程设计报告,具体要求见相关说明文档题目九、手机通信录管理系统(限最多 2 人完成)用 C+设计出模拟手机通信录管理系统,实现对手机中的通信录进行管理。(一) 功能要求(1) 查看功能:选择此功能时,列出下列三类选择。A 办公类 B 个人类 C 商务类 ,当选中某类时,显示出此类所有数据中的姓名与电话号码)(2) 增加功能:能录入新数据(一个结点包括:姓名、电话号码、分类(可选项有:A 办公类 B 个人类 C 商务类) 、电子邮件) 。例如杨春 13589664454 商务类 chuny126.com当录入了重复的姓名与电话号码时,则提示数据录入重复并取消录入;当通信录中超过 15条信息时,存储空间已满,不能再录入新数据;录入的新数据能按递增的顺序自动进行条目编号。(3) 拔号功能:能显示出通信录中所有人的姓名,当选中某个姓名时,屏幕上模拟打字机的效果依次显示出此人的电话号码中的各个数字,并伴随相应的拔号声音。(4) 修改功能:选中某个人的姓名时,可对此人的相应数据进行修改(5) 删除功能:选中某个人的姓名时,可对此人的相应数据进行删除,并自动调整后续条目的编号。(二)其它要求:第 7 页 共 10 页(1) 只能使用 C/C+语言,源程序要有适当的注释,使程序容易阅读(2) 至少采用文本菜单界面(如果能采用图形菜单界面更好)(3) 建议使用结构与链表等数据结构(4) 学生可自动增加新功能模块(视情况可另外加分)(5)写出课程设计报告,具体要求见相关说明文档题目十:学生管理系统(限最多 2 人完成)使用下面的数据,用 C/C+设计一个简单的学籍管理系统,实现出最基本的功能。学生基本信息文件(A.TXT)及其内容:A.TXT 文件不需要编程录入数据,可用文本编辑工具直接生成学号 姓名 性别 宿舍号码 电话号码01 张成成 男 501 8773211102 李成华 女 101 8772311203 王成凤 女 101 8772311204 张明明 男 502 8773433305 陈东 男 501 8773211106 李果 男 502 8773433307 张园园 女 102 87756122 . . .学生成绩基本信息文件(B.TXT)及其内容:学号 课程编号 课程名称 学分 平时成绩 实验成绩 卷面成绩 综合成绩 实得学分01 A01 大学物理 3 66 78 82 0
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号