C++ 课程设计题目1 2015-计科.doc_第1页
C++ 课程设计题目1 2015-计科.doc_第2页
C++ 课程设计题目1 2015-计科.doc_第3页
C++ 课程设计题目1 2015-计科.doc_第4页
C++ 课程设计题目1 2015-计科.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

中原工学院计算机学院C+课程设计任务书 1. 设计目的计算机专业所开设的C+课程设计是教学实践环节中一项重要内容,进行此课程设计的旨在:1 提高和加强学生的计算机应用与软件开发能力,使学生由初学者向专业的程序员过渡。2 培养学生独立分析问题、解决问题、查阅资料以及自学能力,以适应计算机产业日新月异发展的形势。3 学习和掌握C+程序设计方法以及上机调试技巧,为今后学习其它专业课程打好基础。 本次课程设计是以学生独立思考解决问题为主,教师指导为辅,结合上机操作,完成指定的任务,书写课程设计报告。 2设计题目(一)基础设计题目(本类3题必做题)(60分)1. 设计一个复数类CComplex (15分)l 私有成员为,实部和虚部l 重载“”、“”操作,实现直接输入/输出复数。l 重载“+”、“-”操作,实现两个复数相加、减。l 重载“+”、“-”操作,实现一个复数与一个实数相加、减,且满足交换律。l 重载“=”操作,实现两个复数赋值。然后在主函数中进行如下测试:l 采用指针存储动态数组方式存储n个复数信息。l 重载操作直接获得第i个复数。l 设计显示函数Display(CComplex *),输出数组中所有复数。l 测试上述重载后的运算符功能。 2. 定义一个CPerson类及其派生类:学生类CStudent和教师类CTeacher。(25分)其中,l CPerson类私有数据成员:身份ID(char*),姓名(char *),性别(枚举类型Tsex),生日(日期类CBirthday)。成员函数:CPerson()和 CPerson();其中,若对象缺省则为ID(“00000000”),姓名(空串),性别(man),生日(20000101);input():用于录入人员信息;displayP():用于显示人员信息。l 学生类CStudent私有数据成员:班级名(char*),学号(char*),课程(包括课程名和成绩);可以用一个结构体实现。假定有8门课,则定义一个8元素的结构数组。成员函数:构造函数和析构函数,若对象缺省则为学号(“00000000”),班级名(空串),课程(课程名空,成绩-1);input():用于录入学生信息;inputCourse():用于录入课程信息;displayS():用于显示学生信息。l 教师类CTeacher私有数据成员:职称(String类),工号(String类),所在部门(String类)教授课程(课程名、课程号和学生成绩)。成员函数:构造函数和析构函数,若对象缺省则为工号(“00000000”),职称(空串),所在部门(空串),课程(课程名空,课程号“000000”、成绩-1);input():用于录入教师相关信息;SetScore():用于录入学生课程成绩信息;DispScore():用于显示指定或所有学生课程成绩信息;SortScore():用于对所有学生课程成绩排序;SetedStuScore():用于修改指定学生课程成绩信息;displayT():用于显示教师信息。l 采用文件流方式存储学生信息和教师信息。l 要求从键盘上录入10名学生信息(包括8门课程成绩),4名教师信息(每名老师至少上一门课,注意与学生课程的对应性,假设课程不重复)。上述各类函数至少运行一次。 3. 设计抽象类:几何图形类 (20分)l 要求:l 派生类:长方形类(能定义长方体正方体)、圆类(能定义圆柱圆锥对象)、三角形类(能定义三棱锥)。l 设计函数:设计成员函数,计算平面图形和立体图形的周长、面积、或表面积与体积;定义重载函数分别比较不同图形的面积,或表面积。l 设计要求:各种图形的边长(半径)或棱长必须大于或等于0,且满足各种图形的对应特征,参数为边长或半径或棱长,在不同派生类实现上述函数;在不同类中如果参数超出范围则抛出字符串异常。(二)任意题目,至少1题以上(不同题目有不同分值)1. 商品销售统计系统(30分)1)问题描述(功能要求):a.问题描述 编写商品销售统计程序,商品的信息有商品的名称、计算单位(重量或件)、单价。所有商品的信息事先存入计算机,屏幕上显示所有的名称,选择商品名,输入商品计量单位(如重量、件数等),根据单价算出总价。客户一次购物可能购买多种商品,程序应计算出客户应付的钱款数。b.基本要求 程序分为两部分:第一部分用于输入商品的信息并允许修改和删除;第二部分实现销售统计。程序运用时由用户选择进入哪一部分功能,并能在运行时在两部分之间切换,第二部分运行时,首先先显示所有的商品名称及代码,用户输入商品代码及商品重量或件数,用户一次操作可输入若干商品的购买信息,然后输入一个特殊的代码表示本次购买结束。c. 测试数据 程序应输入不少于10种商品信息,并进行模拟运行。实现提示: 本程序的商品信息管理可定义一个商品类,每种商品作为商品类的实例存储在数组中,可以尝试使用STL的vector和list。 重载输入输出操作,将商品信息保存于文件,以便预读取选作内容: 程序在营业结束时统计每种商品的销售量,销售金额及总营业额,因此第二部分应有营业结束的选择,当用户选择此项时屏幕上显示当天营业的每种商品的销售量,销售金额及总营业额。注意:商品类的数据成员应曾加有商品的销售量和销售金额。总营额是所有营业额之和,可用静太数据实现,或可用原商品类派生出一个特殊的类,增加上面的数据成员及相应的成员函数。 d问题的解决方案:根据系统功能要求,可以将问题解决分为以下步骤: (1)分析系统中的各个实体之间的关系及其属性和行为; (2)根据问题描述,设计系统的类层次; (3)完成类层次中各个类的描述(包括属性和方法); (4)完成类中各个成员函数的定义; (5)完成系统的应用模块; (6)功能调试; (7)完成系统总结报告以及系统使用说明书。 2. 某公司的库存管理系统(30分)a问题描述(功能要求):某公司现有以下设备:普通电视机、DVD、带DVD的电视机,带DVD的电视机的售价为普通电视机和DVD单价之和的80%,要求对所有的库存设备都能按照品名进行显示、查找、增加和删除、保存的功能。b问题的解决方案:根据系统功能要求,可以将问题解决分为以下步骤: (1)分析系统中的各个实体之间的关系及其属性和行为; (2)根据问题描述,设计系统的类层次; (3)完成类层次中各个类的描述(包括属性和方法); (4)完成类中各个成员函数的定义; (5)完成系统的应用模块; (6)功能调试; (7)完成系统总结报告以及系统使用说明书。c其它要求:(1)只能使用C/C+语言,源程序要有适当的注释,使程序容易阅读(2)至少采用文本菜单界面(如果能采用图形菜单界面更好)(3)学生可自动增加新功能模块 3 学生选修课程系统设计(30分)a问题描述(功能要求):假定有n门课程,每门课程有课程编号,课程名称,课程性质,总学时,授课学时,实验或上机学时,学分,开课学期等信息,学生可按要求(如总学分不得少于60)自由选课。试设计一选修课程系统,使之能提供以下功能:(1)系统以菜单方式工作v(2)课程信息录入功能(课程信息用文件保存)输入v(3)课程信息浏览功能输出v(4)查询功能:(至少一种查询方式)算法v 按学分查询l 按课程性质查询l(5)学生选修课程(可选项)vb问题的解决方案:根据系统功能要求,可以将问题解决分为以下步骤: (1)分析系统中的各个实体之间的关系及其属性和行为; (2)根据问题描述,设计系统的类层次; (3)完成类层次中各个类的描述(包括属性和方法); (4)完成类中各个成员函数的定义; (5)完成系统的应用模块; (6)功能调试; (7)完成系统总结报告以及系统使用说明书。c其它要求:(1)只能使用C/C+语言,源程序要有适当的注释,使程序容易阅读(2)至少采用文本菜单界面(如果能采用图形菜单界面更好)(3)学生可自动增加新功能模块4. 职工信息管理系统(30分)a问题描述(功能要求):职工信息包括职工号、姓名、性别、年龄、学历、工资、住址、电话等(职工号不重复)。试设计一职工信息管理系统,使之能提供以下功能:(1)系统以菜单方式工作v(2)职工信息录入功能(职工信息用文件保存)输入v(3)职工信息浏览功能输出v(4)查询和排序功能:(至少一种查询方式)算法vl 按工资查询l 按学历查询等(5)职工信息删除、修改功能(任选项)vb问题的解决方案:根据系统功能要求,可以将问题解决分为以下步骤: (1)分析系统中的各个实体之间的关系及其属性和行为; (2)根据问题描述,设计系统的类层次; (3)完成类层次中各个类的描述(包括属性和方法); (4)完成类中各个成员函数的定义; (5)完成系统的应用模块; (6)功能调试; (7)完成系统总结报告以及系统使用说明书。c其它要求:(1)只能使用C/C+语言,源程序要有适当的注释,使程序容易阅读(2)至少采用文本菜单界面(如果能采用图形菜单界面更好)(3)学生可自动增加新功能模块。 5. 成绩记录簿(30分)1问题描述(功能要求):编制一个C+语言成绩记录簿,每个学生信息包括:学号、姓名、C+语言成绩。具体功能:(1)创建信息链表并以磁盘文件保存;(2)读取磁盘文件并显示输出所有学生的成绩;(3)按学号或姓名查询成绩;(4)添加成绩记录;(5)修改指定姓名或学号的学生的成绩并可存盘;(6)显示输出60分以下、6079、8089、90分以上各分数段的学生信息。2问题的解决方案:根据系统功能要求,可以将问题解决分为以下步骤: (1)分析系统中的各个实体之间的关系及其属性和行为; (2)根据问题描述,设计系统的类层次; (3)完成类层次中各个类的描述(包括属性和方法); (4)完成类中各个成员函数的定义; (5)完成系统的应用模块; (6)功能调试; (7)完成系统总结报告以及系统使用说明书。3其它要求:(1)只能使用C+语言,源程序要有适当的注释,使程序容易阅读(2)至少采用文本菜单界面(3)学生可自动增加新功能模块6. 班级档案管理系统(30分)对一个有N个学生的班级,通过该系统实现对该班级学生的基本信息进行录入、显示、修改、删除、保存等操作的管理。功能要求:(1)本系统采用一个包含N个数据的结构体数组,每个数据的结构应当包括:学号、姓名、性别、年龄、备注。(2)本系统显示这样的菜单:请选择系统功能项:a 学生基本信息录入b 学生基本信息显示c 学生基本信息保存d 学生基本信息删除e 学生基本信息修改(要求先输入密码)f 学生基本信息查询(1)按学号查询(2)按姓名查询(3)按性别查询(4)按年龄查询g. 退出系统(3)执行一个具体的功能之后,程序将重新显示菜单。(4)将学生基本信息保存到文件中。(5)进入系统之前要先输入密码。 三参考资料: 1C程序设计清华大学出版社 谭浩强 2C+程序设计教程清华大学出版社 强能3Visual C+ 使用速成 清华大学出版社 沈纪新4.C/C+使用技巧1001例 电子工业出版社 Kris Jamsa 5MSDN四验收程序完成后,由老师统一检查验收,交书面课程设计报告及程序清单各一份,字体要工整清晰。(需打印)五具体时间与地点安排时间安排:16周17周18周上午上午验收成绩地点:南区计算机学院实验室二机房要求每个人必须验收程序,方可通过课程设计;由于时间短,需要学会自学,充分利用课外时间看书、设计、编码。六、课程设计报告格式要求一、 课程设计目的及要求(二个题目写在一起)1设计目的2设计要求(1)学籍管理(样例)(2)封装字符串(样例)二、 课程设计具体实现1以学籍管理为例(1)总

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论