首页 > 编程语言 >C++《面向对象课程设计》题目

C++《面向对象课程设计》题目

时间:2022-12-07 21:24:32浏览次数:51  
标签:课程设计 选课 传送门 信息 学生 面向对象 课程 C++ 姓名

C++《面向对象课程设计》题目

面向对象编程课程设计 参考内容
课程名称: 《面向对象课程设计》
设计题目: 学生选课系统;订票系统;运动会分数统计系统;通信录管理系统;歌咏比赛成绩管理; *另:可自行选题,经认可老师同意后可以作为设计题题目
一. 目的与要求

  1. 目的:使学生通过参加小型软件的开发过程,进一步掌握面向对象的程序设计方法,使学生具有团队协作精神,并培养学生的创新能力和创新意识。

  2. 要求:
    (1)了解并掌握面向对象程序设计方法,具备初步的独立分析和设计能力;
    (2)初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能;
    (3)提高综合运用所学的理论知识和方法独立分析和解决问题的能力;
    (4)训练用系统的观点和软件开发一般规范进行软件开发,培养软件工作者所应具备的科学的工作方法和作风。
    (5)设计的题目要求达到一定工作量(300行以上代码),并具有一定深度和难度。
    (7)学生必须认真主动完成课设的要求。有问题及时主动通过各种方式与教师联系沟通。学生要发挥自主学习的能力,充分利用时间,安排好课设的时间计划,并在课程设过程中不断检测自己的计划完成情况。
    二. 课程设计内容说明

  3. 项目一

*学生选课系统

课程基本信息:课程名,课时,开课学期,学分
专业选修课信息包括:课程名,课时,开课学期,学分,所属专业;
公共选修课信息包括:课程名,课时,开课学期,学分,面向专业,开课系部。
学生信息:学号,姓名,专业,选课信息
功能要求:
(1)课程信息的维护:查询课程信息情况、增加课程信息、删除课程信息、更新课程信息。
(2)学生信息的维护:查询学生信息情况、增加学生信息、删除学生信息、更新学生信息。
(3)选课:每人每学期选课不能超过4门;同一学期选修同一门课程的学生人数不能超过100人。只能选自己专业的专业选修课或面向自己专业的公共选修课。
(4)选课信息:记录学生的选课情况,属性为:课程名,选课时间(学期),成绩。
(5)统计模块包括:每个学生选修课程的门数,每门课程选修的学生人数。

源码传送门

传送门:https://pan.baidu.com/s/1JJs9vbZahUCB6cQvXLgAVg?pwd=1111

  1. 项目二

*订票系统

功能要求:
(1)录入:可以录入航班情况(数据可以存储在一个数据文件中,数据结构、具体数据自定)
(2)查询:可以查询某个航线的情况(如,输入航班号,查询起降时间,起飞抵达城市,航班票价,票价折扣,0确定航班是否满仓);
可以输入起飞抵达城市,查询飞机航班情况;
(3)订票:(订票情况可以存在一个数据文件中,结构自己设定)
可以订票,如果该航班已经无票,可以提供相关可选择航班;
(4)退票: 可退票,退票后修改相关数据文件;
客户资料有姓名,证件号,订票数量及航班情况,订单要有编号。
(5)航班信息维护:增加、删除、修改航班信息,并可以修改航班数据文件。

源码传送门

传送门:https://pan.baidu.com/s/1JJs9vbZahUCB6cQvXLgAVg?pwd=1111

  1. 项目三

*运动会分数统计系统

某校要召开运动会,现要求开发一个学校运动会成绩统计系统,参加运动会有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

  1. 项目四

*通信录管理系统

用C++设计出模拟手机通信录管理系统,实现对手机中的通信录进行管理。
人员信息:姓名、手机号码、家庭电话号码、办公电话、电子邮件、分组
(其中:手机号码、家庭电话号码、办公电话不能同时为空;分组说明: 未知、同事、亲戚、朋友、家人、同学等还可以自己创建分组)
功能要求:
(1) 查看功能:选择此功能时,当选中某类时,显示出此类所有数据中的姓名和电话号码)
(2) 增加功能:能录入新人员记录(当录入了重复的姓名和电话号码时,则提示数据录入重复并取消录入;默认分组“未知”)
(3) 拔号功能:能显示出通信录中所有人的姓名,当选中某个姓名时,屏幕上模拟打字机的效果依次显示出此人的电话号码中的各个数字(可调用"windows.h"—Sleep来实现延时)。
(4) 修改功能:选中某个人的姓名时,可对此人的相应数据进行修改
(5) 删除功能:选中某个人的姓名时,可对此人的相应数据进行删除,并自动调整后续条目的编号。
(6)查找:按姓名(模糊查找,如输入一个“李”,则列出所有姓李的信息)或按电话号码查找某人信息。

源码传送门

传送门:https://pan.baidu.com/s/1JJs9vbZahUCB6cQvXLgAVg?pwd=1111

  1. 项目五

*歌咏比赛成绩管理

若干名选手参加比赛,参赛者要演唱两首,自选准备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

相关文章

  • 从稍微懂一点开始的C++学习之路1: 智能指针
    从稍微懂一点开始的C++学习之路1智能指针因为之前一直是搞qt的,没有搞过纯c++,所以现在算得上是刚开始学纯C++。C++的大部分语法其实我都懂,主要的是一些规范,还有内存回收等......
  • [c++11新特性]12-类型萃取
    ​​c++11/14类型萃取​​类型萃取所谓类型萃取,就是依靠模板的方式,来判断一个类型是否拥有某些特性,比如A类型和B类型是否相同,C类型是否有某个成员变量,D类型是否有某个方法,或......
  • 【JAVA笔记】JAVA-入门基础-面向对象04
    一、OOP详解面向对象编程(Object-OrientedProgramming,OOP)面向对象编程的本质就是:以类的方式组织代码,以对象的组织(封装)数据。抽象三大特性:封装、继承、多态、1、cla......
  • C/C++计时函数
    计时函数介绍time函数原型`time_ttime(time_t*timer)`,time函数是c-runtime库里的函数。此函数返回从1970年1月1日00:00:00(UTC时间)到此刻所经过的总秒数,所以使用此函数......
  • 无法在Unreal Engine中使用C++创建Struct
    1)无法在UnrealEngine中使用C++创建Struct​2)Unreal中,如何在一个视口内显示多个摄像机视口3)如何能和UGUI里面的图片做个动画一直旋转,实现Loading效果4)UIToolkit中ListView......
  • c++练习272题:金币
    *272题原题传送门:http://oj.tfls.net/p/272题解:(遍历,60分)#include<bits/stdc++.h>usingnamespacestd;longlongallday;//总天数longlongpas;//已经过去longlongmo......
  • 私有继承和保护继承的访问规则是什么?c++
    以这些类为例:classB{/*...*/};classD_priv:privateB{/*...*/};classD_prot:protectedB{/*...*/};classD_publ:public......
  • C++知识点:数组末端下一位置
    c++语言规定,数组末端下一位置是合法的,但不允许对其解引用(即解引用是未定义的)。......
  • C++标准库笔记:13.4.3 Stream状态与布尔条件测试
    流条件测试inta=0;while((std::cin>>a)){cout<<a<<endl;}以上代码得以使用std::cin来做条件测试,是因为Stream在类ios_base内定义了两个可用于布尔表达式的函......
  • c++标准库笔记:13.4.4 Stream的状态和异常
    设置触发异常Stream缺省的情况下不抛出异常,但可由成员函数exceptions来设置这种行为。exceptions有两种形式:获取引发异常的标志(不带参数)设置引发异常的标志(带参数)//Thisme......