C++《面向对象课程设计》题目
面向对象编程课程设计 参考内容
课程名称: 《面向对象课程设计》
设计题目: 学生选课系统;订票系统;运动会分数统计系统;通信录管理系统;歌咏比赛成绩管理; *另:可自行选题,经认可老师同意后可以作为设计题题目
一. 目的与要求
-
目的:使学生通过参加小型软件的开发过程,进一步掌握面向对象的程序设计方法,使学生具有团队协作精神,并培养学生的创新能力和创新意识。
-
要求:
(1)了解并掌握面向对象程序设计方法,具备初步的独立分析和设计能力;
(2)初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能;
(3)提高综合运用所学的理论知识和方法独立分析和解决问题的能力;
(4)训练用系统的观点和软件开发一般规范进行软件开发,培养软件工作者所应具备的科学的工作方法和作风。
(5)设计的题目要求达到一定工作量(300行以上代码),并具有一定深度和难度。
(7)学生必须认真主动完成课设的要求。有问题及时主动通过各种方式与教师联系沟通。学生要发挥自主学习的能力,充分利用时间,安排好课设的时间计划,并在课程设过程中不断检测自己的计划完成情况。
二. 课程设计内容说明 -
项目一
*学生选课系统
课程基本信息:课程名,课时,开课学期,学分
专业选修课信息包括:课程名,课时,开课学期,学分,所属专业;
公共选修课信息包括:课程名,课时,开课学期,学分,面向专业,开课系部。
学生信息:学号,姓名,专业,选课信息
功能要求:
(1)课程信息的维护:查询课程信息情况、增加课程信息、删除课程信息、更新课程信息。
(2)学生信息的维护:查询学生信息情况、增加学生信息、删除学生信息、更新学生信息。
(3)选课:每人每学期选课不能超过4门;同一学期选修同一门课程的学生人数不能超过100人。只能选自己专业的专业选修课或面向自己专业的公共选修课。
(4)选课信息:记录学生的选课情况,属性为:课程名,选课时间(学期),成绩。
(5)统计模块包括:每个学生选修课程的门数,每门课程选修的学生人数。
源码传送门
传送门:https://pan.baidu.com/s/1JJs9vbZahUCB6cQvXLgAVg?pwd=1111
- 项目二
*订票系统
功能要求:
(1)录入:可以录入航班情况(数据可以存储在一个数据文件中,数据结构、具体数据自定)
(2)查询:可以查询某个航线的情况(如,输入航班号,查询起降时间,起飞抵达城市,航班票价,票价折扣,0确定航班是否满仓);
可以输入起飞抵达城市,查询飞机航班情况;
(3)订票:(订票情况可以存在一个数据文件中,结构自己设定)
可以订票,如果该航班已经无票,可以提供相关可选择航班;
(4)退票: 可退票,退票后修改相关数据文件;
客户资料有姓名,证件号,订票数量及航班情况,订单要有编号。
(5)航班信息维护:增加、删除、修改航班信息,并可以修改航班数据文件。
源码传送门
传送门:https://pan.baidu.com/s/1JJs9vbZahUCB6cQvXLgAVg?pwd=1111
- 项目三
*运动会分数统计系统
某校要召开运动会,现要求开发一个学校运动会成绩统计系统,参加运动会有n个系,比赛分成m个男子项目,和w个女子项目。
系信息(系编号为D01……n,系名称Dname),
运动员信息:(编号,姓名,性别,所属系,成绩(初值为0))
项目信息:(项目编号,项目名称)
功能要求:
生成报名表:
维护报名表:增加、删除、修改,(报名人数3人以下(含3人)取消该项目的比赛)
(3) 登记各项比赛成绩
(4) 根据预赛成绩产生预(决)赛名单
(5) 计分规则:
报名人数在16人以上(含16人)取取前八名,前八名的积分分别为:8、7、6、5、4、3、2、1;
报名人数在8人以上(含8人)16人以下,取前五名,前五名的积分分别为:7、5、3、2、1;
报名人数在8人以下,取前三名,前三名的积分分别为:5、3、2;
(6)统计
能统计各系总分,
按系系总分、男女团体总分排序输出;
按项目编号查询取得前三或前五或前八名的运动员情况。
扩展功能:
实时报告各项竞赛成绩(能自动及时、经常地报告最新比赛成绩),包括是否打破记录。
源码传送门
传送门:https://pan.baidu.com/s/1JJs9vbZahUCB6cQvXLgAVg?pwd=1111
- 项目四
*通信录管理系统
用C++设计出模拟手机通信录管理系统,实现对手机中的通信录进行管理。
人员信息:姓名、手机号码、家庭电话号码、办公电话、电子邮件、分组
(其中:手机号码、家庭电话号码、办公电话不能同时为空;分组说明: 未知、同事、亲戚、朋友、家人、同学等还可以自己创建分组)
功能要求:
(1) 查看功能:选择此功能时,当选中某类时,显示出此类所有数据中的姓名和电话号码)
(2) 增加功能:能录入新人员记录(当录入了重复的姓名和电话号码时,则提示数据录入重复并取消录入;默认分组“未知”)
(3) 拔号功能:能显示出通信录中所有人的姓名,当选中某个姓名时,屏幕上模拟打字机的效果依次显示出此人的电话号码中的各个数字(可调用"windows.h"—Sleep来实现延时)。
(4) 修改功能:选中某个人的姓名时,可对此人的相应数据进行修改
(5) 删除功能:选中某个人的姓名时,可对此人的相应数据进行删除,并自动调整后续条目的编号。
(6)查找:按姓名(模糊查找,如输入一个“李”,则列出所有姓李的信息)或按电话号码查找某人信息。
源码传送门
传送门:https://pan.baidu.com/s/1JJs9vbZahUCB6cQvXLgAVg?pwd=1111
- 项目五
*歌咏比赛成绩管理
若干名选手参加比赛,参赛者要演唱两首,自选准备1首歌曲,另一首由组委会事先准备M首歌曲(歌曲编号1~M,歌曲名称),通过以随机抽取方式抽取1首歌曲(不允许与自己自选歌曲系统,但允许与别人相同)。有8名评委。
选手成绩的计算方式是否采用去掉最高分和最低分,再取平均分的方法计算,然后2首歌曲各占50%。
1)N个选手用随机函数生成选手(编号1~N)比赛顺序表(编号,姓名)。
2)随机抽取方式抽取1首歌曲,生成比赛比赛顺序表及曲目表并输出。
序号 姓名 曲目1 曲目2
1 *** 《****》 《***》
2 *** 《****》 《***》
……
N *** 《****》 《***》
3)能够输入每位评委对选手的评分,计算每首歌曲的得分,与选手的最终成绩。
序号 姓名 曲目1 曲目2 曲目1得分 曲目2得分 最后得分
1 *** 《****》 《***》 9.0 9.2 9.1
2 *** 《****》 《***》
……
N *** 《****》 《***》
4)计算比赛的名次。
5) 前3名以特大字的方式在屏幕上显示选手的最终得分.
源码传送门
传送门:https://pan.baidu.com/s/1JJs9vbZahUCB6cQvXLgAVg?pwd=1111
标签:课程设计,选课,传送门,信息,学生,面向对象,课程,C++,姓名 From: https://www.cnblogs.com/codewriter/p/16964557.html