当前位置:文档之家› c++课程设计题目(分析)

c++课程设计题目(分析)

1、设计一个模拟选课系统
问题描述:假定有30门课程,每门课程有课程编号,课程名称,课程性质,总学时,授课学时,学分,额定选课人数(每门课选课不超过40人),实际选课人数。

学生可按要求(如总学分不得少于40)自由选课(如果某门课的实际选课人数=额定选课人数,不允许选课)。

每个学生信息包括学号,姓名,选取课程(每个同学可选课程不超过8门课),实际选课门数(不一定选满8门课)。

试设计一选修课程系统,使之能提供以下功能:
(1).学生端:由学生进行操作,此操作包括查询课程信息(按学分查询,按课程性质查询),学生选课(不支持重复选课,即一门课被同一个同学选择多次),退课,查询选课情况等
(2).管理端:由管理员进行操作,此操作包括增加/删除学生、课程,填写成绩(以课程为单位,分别填写某门课程的考试成绩),更改学分,查询某门课的选课情况
要求:
(1)系统以菜单方式工作(字符界面即可,界面给出操作提示,如下所示,以下各题要求相同。

也可以采用Visual图形界面完成。


*****************
* 1.…*
* 2. …*
*****************
(2)创建文件,将信息以文本文件的形式进行保存。

(建立课程文件,存储课程信息;建立学生文件,存储学生信息;建立选课文件,存储选课结果(课程号,学生号,成绩);根据需要,创建其他文件)
2、银行账户管理程序
问题描述:设计一个银行账户管理程序,账户的信息有账号(唯一)、姓名、余额、身份证号码、单位、电话号码、地址,存、取款记录(日期,金额,类型(存,取)。

由于没有学链表,所以可以定义一个数组存储改信息)等;允许用户进行如下操作:开户、销户、存款、取款、转账、查询(某个账户的信息,某个用户的所有帐户的信息),一个用户可以有多个户头,账户的数值不超过10000个(注:因没有学习链表,所以此处只能作此限制)。

基本要求
程序运行时,可以由用户选择进行何种操作,开户操作要求输入用户信息后自动获取账号(帐号应连续编号),用户销户后账号被回收,并且该账号可以继续分配给其它账户,不允许用户透支,根据姓名或账号可以进行用户的信息查询,所有的账户信息应存放到一个文件中,可以随时的访问和更新。

测试数据
程序应输入不少于10人的账户信息,应考虑到人员同名的情况。

实现提示
定义一个文件,记录银行工作的流水信息。

可定义一个账户类(count)存放账户信息以及执行相应的操作,可以用另外一个类(数据成员为count数组,数组中的数据与流水文件相关)来管理账户。

3、单项选择题标准化考试系统设计
问题描述:设计一个单项选择题标准化考试系统,该系统要求能自动组卷和评分
功能要求:
(1)用文件保存试题库(每个题目包括题干,四个备选答案,标准答案,分值。

试题库中题目数量不超过1000道题),及学生信息(包括姓名,学号,成绩(成绩初值为0),)(2)管理员可以进行
题目录入:可随时增加试题到试题库中
组卷:每次考试之前从试题库中随机抽取N到题目组成试卷
学生信息维护(添加,删除)
成绩单打印:在显示器显示成绩单
(3)学生端可以进行
答题,答题结束后,显示本次考试成绩
实现分析:
建立四个文件,分别存放题库,学生信息,生成的试卷,学生的考试的分文件。

(2)管理员可以进行
题目录入:可随时增加试题到试题库中
操作提示:将试题库中的文件依次读入数组中,在数组中进行题目的添加。

组卷:每次考试之前从试题库中随机抽取N到题目组成试卷
操作提示:利用rand()函数生成一个随机数,见下面的例子
#include <iostream>
#include <cmath>
#include <ctime>
using namespace std;
int main()
{
srand(time(0));
bool select[10]={0};
int result[10];
int count=0,j;
while(count<10)
{
j=(int)(10.0*rand()/(RAND_MAX+1.0));//产生1~10之间的随机数
if(select[j])
continue;
result[count]=j;
select[j]=1;
count++;
}
return 0;
}
学生信息维护(添加,删除)
操作提示:将学生文件中的信息读入数组中。

在数组中进行添加、删除操作。

成绩单打印:在显示器上显示成绩单
操作提示:将学生得分文件中的信息读入数组中。

并显示数组中的信息。

(3)学生端可以进行
答题,答题结束后,显示本次考试成绩
操作提示:将管理员生成的试题文件中的数据(每一个题目包含所有的信息,即题干、四个选项、正确答案、分值)读入数组中。

依次显示每道题目,开始答题。

每题答题结束后,将答案与备选答案进行比较,统计得分。

做完试卷后,提交学生的得分(以app方式将考试结果追加到文件中)。

4、公司员工管理系统
问题描述:公司由雇员组成。

管理系统需要存储雇员的姓名,性别,所在部门,并完成工资的计算。

其中,雇员分为经理,技术人员,销售人员和销售经理。

四类人员的月薪计算方法如下:经理拿固定月薪,技术人员按小时领取月薪,销售人员按其当月销售额的提成领取工资,销售经理领取固定月薪和销售提成。

功能要求:
1).员工的管理(增加,删除)
2).浏览:显示所有员工的信息
3). 查询某一员工的信息,分类查询
4). 统计功能。

能根据多种参数进行统计,例如,统计四类人员的数量以及总数,统计男女员工的数量,统计平均工资,最低工资,最高工资
员工信息要求以文本文件的形式保存。

操作分析:
定义一个基类,表示雇员,数据成员包括,姓名,性别,所在部门,工资。

在此基础上,
定义派生类:经理类。

定义派生类:技术员类。

新增数据成员包括小时工资,工作时间(以小时为单位)
定义派生类:销售人员,新增数据成员销售额(按照销售额的1%领取工资)。

定义派生类:销售经理(是经理类和销售人员类的派生类,注意使用虚基类)。

可以使用四个文件存储每类人员的信息,也可以使用一个文件存储所有人的信息(此时需要在基类中存储员工的类型信息以利于后面的统计工作。


5、库存管理系统设计
问题描述:超市中商品分为四类,分别是食品,化妆品,日用品和饮料。

每种商品都包含商品名称,价格,库存量。

功能要求:
1)进货功能(买入)。

按要求添加相应商品信息到库存中,添加进货日期,进货价格
2)出货功能(卖出)。

出货时,先输入商品类别,然后输入商品名称。

如果有库存量,输入出货的数量,出货日期,出货价格,计算销售额和利润。

如果库存量不够,给出提示信息,出货结束。

3)统计功能
输出当前库存中所有商品的总数及详细信息,统计每种商品每天的销售额
和利润,输出统计信息时,要按利润从小到大进行排序
4)商品简单管理功能
查询:可按商品类别,商品名称,进货日期进行查询(可以查询入库信息,
出库信息及库存信息)
删除:在库存中删除指定的商品,并在出库记录中进行该厂品的出库操作
操作提示:
定义一个文件,记录入库信息(商品类型,商品名称,商品购入价格,购入数量,入库时间。

这是一个流水文件)
定义一个文件,记录出库信息(商品类型,商品名称,商品售出价格,售出数量,出库时间。

这是一个流水文件)。

定义一个文件,记录库存信息。

(商品类型,商品名称,库存数量(入库时,增加,出库时,将少。

假设商品永不过期。

),平均购入价格(同一种商品,不同批次的购入价格不同,所以此时记录平均的购入价格))
定义一个入库商品类in_goos,定义一个in_goods_list(对应于一个入库流水文件)
定义一个出库商品类out_goos,定义一个out_goods_list(对应于一个出库流水文件)
定义一个库存商品类goods,定影一个goods_list(对应于库存文件。

)
在此基础上,定义一个派生类,表示进货类
定义一个派生类,表示一个出货类,。

相关主题