1、C+课程实践要求和题目1、设计要求:以小组为单位,完成一个设计题目。三人为一个小组,可自己选定一题目来做。小组成员既要有相互合作的精神,又要分工明确。每个学生都必须充分了解整个设计的全过程。最终上交的成果为:课程实践报告(打印稿和电子稿各一份);程序源代码(必须上机调试通过)。2、课程实践报告内容:1、设计目的2、总体设计(程序设计组成框图、流程图)3、详细设计(模块功能说明(如类定义、函数的函数功能、入口及出口参数说明,函数调用关系描述等)4、调试与测试:调试方法,测试结果的分析与讨论,测试过程中遇到的主要问题及采取的解决措施5、源程序清单和执行结果:清单中应有足够的注释6、结束语3、提交报
2、告的格式正文汉字宋体小四号字,英文用新罗马(time new roman) ,每个自然段开始空两格。图表美观大方、结构清晰、大小适中。源程序清单用英文新罗马(time new roman)五号报告的页数,不算源代码清单不少于 4 页参考题目:题目一:学生成绩管理现有学生成绩信息,内容如下姓名 学号 语文 数学 英语 张明明 01 67 78 82李成友 02 78 91 88张辉灿 03 68 82 56王露 04 56 45 77陈东明 05 67 38 47 请用 C+编写一系统,实现学生成绩信息管理,软件的入口界面应包括如下几个方面:(一)功能要求:(1)信息维护:要求:学生信息数据要以
3、文件的形式保存,能实现学生信息数据的维护。此模块包括子模块有:增加学生信息、删除学生信息、修改学生信息(2)信息查询:要求:查询时可实现按姓名查询、按学号查询(3)成绩统计:要求:A 输入任意的一个课程名(如数学)和一个分数段(如 60-70) ,统计出在此分数段的学生情况。(4)排序:能对用户指定的任意课程名,按成绩升序或降序排列学生数据并显示排序结果(二)其它要求:(1) 只能使用 C+语言,源程序要有适当的注释,使程序容易阅读(2)学生可自动增加新功能模块(视情况可另外加分)(4)写出课程设计报告题目二:字符串处理设计一个字符串类,要求具有计算字符串长度、两个字符串大小比较、两个字符串连
4、接等功能。细节要求:(1)构造:可利用字符串对象,指针,整数,字符,浮点数构造一个字符串以及拷贝构造对象;(2)运算:提供字符串加法(字符串连接),关系运算(即比较字符串大小运算 ),赋值运算等;(3)转换:转换为 C 语言字符串,字符串长度,大小写转换,删除字符串前后空格,字符串与整数和浮点数转换等。(4)输入输出:支持输入输出运算符“”和“ ”。题目三:通讯录管理设计一简单的通讯录管理系统可以对通信录进行简单管理,系统的主要功能:1.显示通讯录中的所有记录2.查询指定记录3.增加记录4.删除记录5.保存记录6.读取记录题目四:图书信息管理系统设计图书信息包括:登录号、书名、作者名、分类号、
5、出版单位、出版时间、价格等。试设计一图书信息管理系统,使之能提供以下功能:系统以菜单方式工作图书信息录入功能(图书信息用文件保存 )输入图书信息浏览功能输出查询和排序功能:(至少一种查询方式 ) 按书名查询按作者名查询图书信息的删除与修改(可选项 )题目五:图形计算一:问题描述有三角形,圆形,矩形等图形,实现对不同的图形都可以计算面积和周长。(1)设计思想本问题涉及的几类图形,首先要考虑他们是否有共同的特性,如果有,将其抽取出来形成基类。无论是什么图形,都应该具有面积和周长,只是计算的方法和拥有的数据成员不一样,所以抽取出一个基类图形类(Shape) ,它应该具有的成员为面积(Area)和周长
6、(Girth) ,同时有应该具/有读取这些数据成员的函数,设为 GetABC 和 SetABC。而问题中所涉及的图形即可以派生于基类。对于三角形,它应该具有三条边 a,b,c 及设置读取这条三边的成员函数 GetABC()和 SetABC(),可用公式 Area=sqrt(s(s-a)(s-b)(s-c)来计算面积;对于圆应该有半径 r 和相应的成员函数,它的面积公式为 PI*r*r,周长为 2PI*r;对矩形有长 L 和宽W,面积为 L*W,周长为 2L+2W。因为计算面积和周长的方法不同,所以每个派生类中都应该具有面积和周长的成员函数,但为了能够使用基类指针直接访问各派生类对象,可在基类中
7、声明计算机面积和周长的虚函数,而在派生类内可根据字的计算公式改写该函数,从而实现了同一接口,具有不同的操作能力。题目六:班级人员管理系统功能要求:(1) 设计一个人事管理的 People(人员)类。考虑到通用性,这里只抽象出所有类型人员都具有的属性:name(姓名) ,number (编号) ,birthday(出生日期) ,id(身份证号)等等。其中“出生日期”定义为一个“日期”类(具有属性):year(年) ,month(月) ,date(日)内嵌子对象。用成员函数实现对人员信息的录入和显示等必要的功能操作(自己独立思考设计) 。要求包括:构造函数和析构函数,拷贝构造函数,内联成员函数。
8、(2) 从 people(人员)类派生出 student(学生)类,添加属性:班号char chassNO;从 people(人员)类派生出 student(学生)类,添加属性:职务char principalship,部门 char department;.从 student 类中派生出 graduate(研究生)类,添加属性:专业 char subject,导师 teacher adviser(为(教师类内嵌子对象) ); 从 graduate 类和 teacher 类派生出 TA(助教生)类,注意虚基类的使用,重载相应的成员函数。 (3) 对 people 类重载“= = ”运算符和“=
9、”运算符, “= =”运算符判断两个 people类对象的 id 属性是否相等; “=”运算符实现 people 类对象的赋值操作。 (4) 定义一个对 people 类对象数组按编号排序的函数,一个按编号查找 people 对象的函数。题目七:学生管理系统系统主要功能描述(可自己增加或修改部分功能):1、设计一个学生类 Student,包括姓名,学号,性别,籍贯,年龄,出生日期和住址,其中“ 出生日期 “定义为一个“日期“类( 具有属性:year(年),month(月),date(日) 内嵌子对象。2、具有数据的录入、显示、保存、查询(按学号或姓名查询) 、修改和删除功能。3、对 Stude
10、nt 类重载运算符和运算符,运算符判断两个Student 类对象的 id 属性是否相等;运算符实现 Student 类对象的赋值操作。4、对给出的程序源代码要给出各部分的详细注释。5、自己根据能力及需要添加相应功能模块,增强模拟系统功能。题目八:课程设计选题管理系统设计学生类;课程设计题目类(序号,题目,人数,描述) ;每个题目限两个人选;要求使用面向对象编程进行模拟课程设计选题。主要包括下列模块:1新增、修改、删除课程设计题目;2新增、修改、删除学生信息;3查询课程设计内容;4课程设计选题;题目十:小型公司工资管理系统 一题目要求 (1)公司主要有 4 类人员:经理、技术员、销售员、销售经理
11、。要求存储这些人的职工号、姓名、月工资、岗位、年龄、性别等信息。 (2)工资的计算方法: A.经理:固定月薪为 8000; B.技术员:工作时间*小时工资( 100 元每小时) ; C.销售员:销售额*4%提成;D.销售经理:底薪(5000)+所辖部门销售额总额*0.5%; (3)输入数据要求每类人员不能少于 4 人,并按以下格式输出:职工号 姓名 性别 年龄 岗位 工资 排名 (4)菜单要求:要有一个菜单,用于选择各项功能,其中 1) 数据录入:输入各种数据; 2) 数据统计:各销售经理的工资计算及最终按工资进行的冒泡排序; 3) 数据打印:打印上述表格; 4)数据备份:把相关数据写入文件;
12、5)退出:退出本系统;题目十一:职工信息系统设计要求实现如下功能:(1)建立职工信息数据,包括职工编号、姓名、性别、工资、出生时间、参加工作时间和年龄(必须计算得到) 。(2)根据职工信息表,建立只含有姓名和年龄的职工信息简表。 (可选功能)(3)使用继承的方法构造 3 个类, (即雇员类虚基类,教师类和工人类派生类)使用相应的对象放置 10 个职工信息。(4)编写同名 display()成员函数,用来输出数组的内容。(5)按不同类别输出职工信息,比如按系输出教师信息。 (可选功能)(6)要求对“”和“”运算符进行重载。考虑到输人职工编号时,也会因不小心引人空格,而且名字中也需要有空格,所以重
13、载“ 运算符时,需要满足这个要求。(7)抽取并计算职工的平均年龄。(8)检索(查找)指定信息。 (如按姓名检索、按年龄检索)(10)参考界面如下:增加一位教师记录增加一位工人记录显示全部职工记录计算教师平均年龄计算工人平均年龄删除一个教师删除一个工人按系输出教师信息(可选)按姓名检索所有信息结束程序运行题目十二:简单计算器实现一个计算器类,支持加、减、乘、除等基本运算。题目十三:小型题库系统设计和实现一个基于文件的小型题库系统,题型可以包括选择、判断、填空、问答等。自行设计题目格式,实现题目和参考答案的录入、修改、查询。命题、答题、统计等功能。题目十四:学生选修课程系统设计假定有 n 门课程,
14、每门课程有课程编号,课程名称,课程性质,总学时,授课学时,实验或上机学时,学分,开课学期等信息,学生可按要求(如总学分不得少于 60)自由选课。试设计一选修课程系统,使之能提供以下功能:系统以菜单方式工作课程信息录入功能(课程信息用文件保存 )输入课程信息浏览功能输出查询功能:(至少一种查询方式 )算法按学分查询按课程性质查询学生选修课程(可选项)题目十五:电子年历功能要求:(1)输入一个年份,输出是在屏幕上显示该年的日历,假定可输入的年份在 1900-2100 年之间。(2)输入年月,输出该月的日历。(3)输入年月日,输出距今天有多少天,星期几,是否是公历节日。其它参考题目订票系统实验设备管
15、理系统学生电子投票平台小型商品管理系统宾馆客房管理系统课程实践报告封面如下:C+程序设计课程实践报告设计题目学生姓名:学 号: 班 级:指导老师:日 期: 西北民族大学数学与计算机科学学院1 设计目标叙述本人所要实现的题目要解决什么问题,包括哪些主要功能2 总体设计程序设计组成框图、流程图3详细设计分别用传统流程图或 NS 流程图表示出各模块的流程图模块功能说明(如函数功能、入口及出口参数说明,函数调用关系描述等4. 调试与测试调试方法,测试结果的分析与讨论,测试过程中遇到的主要问题及采取的解决措施5分析及结论对所实现系统做一总结,如实现了哪些功能、某些难点是如何解决的、还有哪些不足等6参考文献1 2 7、附录源程序清单(清单中应有足够的注释)