C++课程设计指导书

 

一、题目:

(1)       成绩管理系统

(2)       图书资料信息管理系统

(3)       职工工资信息管理系统

(4)       通信录

..............

二、需要处理的基础数据

1)学生成绩管理系统

l        学生基本信息:如学号、姓名、性别、年龄、宿舍号码、电话号码等。

l        学生各科课程的成绩:语文成绩,数学成绩,外语成绩,数据库成绩等。要求可以根据学号,或者姓名查找学生成绩。能对班级同学每科成绩进行排序

l         基本功能:

n         成绩的输入(学号、姓名、英语、数学、C++语言);

n         成绩统计(各科平均成绩、各科成绩“优秀”、“良好”、“中等”、“及格”、“不及格”的人数及其所占比例);

n         总成绩统计(学生的总成绩、平均成绩及成绩排名)

n         成绩的统计结果显示,其格式如下:

学号

姓名

英语

数学

C++语言

总成绩

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

l         扩展功能:

n         学生数据的添加、修改、与删除

n         学生数据的读取与存储

2)职工工资信息管理系统

l        职工基本信息:如工资卡号、身份证号、姓名、性别、年龄、工龄、部门、技术职称、技术职称编号、家庭电话号码、手机号码等。

l        工资基础信息:技术职称编号、技术职称、基本工资、职务工资、各种补助等。

l        费用扣除信息:工资卡号、水费、电费、清洁费(5/月)、闭路电视费(10/月)等。

工资单数据:工资卡号、姓名、应发工资、水费、电费、清洁费、闭路电视费、税金、实发工资、特别奖励。其中:税金计算方法为:应发工资<800元,税金=0
800<
应发工资£1400, 税金=(应发工资-800)´5%
应发工资>1400, 税金=(应发工资-1400)´10%
例如一个小型公司工资管理系统的设计说明与要求如下:

1、  公司主要有4类人员:经理、技术员、销售员、销售经理。要求存储这些人的职工号、姓名、月工资、岗位、年龄、性别等信息。

2、  工资的计算办法:

A、  经理:固定月薪为8000

B、  技术员:工作时间*小时工资(100元每小时);

C、  销售员:销售额*4%提成;

D、  销售经理:底薪(5000)+所辖部门销售额总额*0.5%

3、  类的层次结构大体如下:

      

雇员类

技术员类

经理类

销售员类

销售经理类

      

4、  输入数据要求每类人员不能少于3人,并按以下格式输出:

职工号

姓名

性别

年龄

岗位

工资

排名

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

及某销售经理所辖部门各销售员的业绩及自己的工资表:

职工号

姓名

销售额

 

 

 

 

 

 

 

 

 

 

 

 

销售额合计:

 

 

 

 

 

 

5、  总体设计,要有一个菜单,用于选择各项功能,其中

1)     数据录入:输入各种数据;

2)     数据统计:各销售经理的工资计算及最终按工资进行的冒泡排序;

3)     数据打印:打印上述表格;

4)     数据备份:把相关数据写入文件;

5)     退出:退出本系统;

注:各项菜单都调用一个函数来实现。

3)图书资料信息管理系统

l        图书资料基本信息:中图法分类号、图书编号、书名、作者(要考虑多个作者情况)、出版社、出版日期、ISBN、版次、定价、馆藏数、借阅数等。

l        图书采购信息:书名、作者、采购日期、采购数量、采购单价、采购金额、发票号码、图书编号等。

l        图书借阅信息:借阅人、借阅人所在单位、借书证号、所借书名、借阅日期、归还日期、逾期罚款等。借阅期限为一个月,逾期1天,罚款1角。

l         中图法分类号:

l              T 工业科学    TB 一般工业技术,TD 矿业工程,TE石油、天然气工业,TF 金工业,TG 金属学,TH 机械 TJ 武器工业,TK 动力工业,TL 原子能技术,TM 电工技术, TN 无线电电子学、通信技术, TP 自动化技术、计算技术,…。

(4) 通信录

l         成员基本信息:如姓名、性别、年龄、工作单位、通信地址、电话号码(固定电话和移动电话)、

E-MAIL等。

三、各系统详细功能说明:

1       各种基本数据的录入。如:学生基本情况录入、图书资料基本信息录入、职工基本信息录入等。

2       各种基本数据的修改。即:允许对以及录入的数据重新进行编辑、修改。

3       各种基本数据的插入。如:在学生选修课程基本信息中插入一条新信息;在图书采购信息中插入一条新信息;或在工资基础信息中插入一条新信息等。

4       各种基本数据的删除。如:假设某同学转学或出国深造,删除该生的相关信息;或假设某本书遗失且馆藏数为0,删除该书的相关信息;或假设某员工调离,删除该员工的相关信息等。

5       基于各种数据的查询。如:姓张的所有同学、年龄小于20岁的同学、技术职称为技术员的所有员工、基本工资在1000元以上的员工、书名中含有计算机的所有书籍、全部借出的所有图书等。

6       基于各种基本数据的统计计算。

6-1-1)统计每个学生各门功课的平均成绩,并按平均成绩从高到低的次序排名输出每个学生各门功课的综合成绩和平均成绩(名次、学号、姓名、平均成绩、各门功课的考试成绩、平时成绩、综合成绩)。

6-1-2)统计并输出各班各门功课的平均成绩和总平均成绩。

6-1-3)统计并输出每个同学已修学分。

6-1-4)列出不及格学生清单(学号、姓名、不及格的课程和成绩)。

6-1-5)教务信息其它方面的统计(自行确定)。

 6-2-1)统计馆藏书籍总数、已借出数据总数、在馆书籍数等。

6-2-2)统计馆藏书籍总金额、馆藏书籍的平均价格。

6-2-3)找出借阅次数最多的10本书,并对它们进行排序。

6-2-4)统计每月逾期罚款总金额。被罚款金额最多的前5名借阅者并对其排序。

6-2-5)统计借阅书籍最多的前5名读者。

6-2-6)图书资料信息其它方面的统计。

 6-3-1)统计年龄20岁以下青年员工的总数;年龄在20岁以上,45岁以下的员工数;年龄55岁以上退休员工数。

6-3-2)统计各种技术职称的员工的基本工资总额、职务工资总额、各种补助总额、应发工资总额。进而统计全公司职工的工资总额。

6-3-3)统计各种技术职称员工的员工数,并计算各种技术职称员工的平均工资。

6-3-4)统计该公司每月税金总额、全年税金总额。

6-3-5)按照应发工资对全公司员工进行排序。

6-3-6)职工工资信息其它方面的统计。

 6-4-1)各种基本数据的录入。

6-4-2      各种基本数据的修改。即:允许对以及录入的数据重新进行编辑、修改。

6-4-3     各种基本数据的插入。如:插入一条新成员信息;

6-4-4 各种基本数据的删除。删除该成员的相关信息等。

6-4-5     基于各种数据的查询。

四、课程设计要求

1、使用C/C++语言,源程序要有适当的注释,使程序容易阅读。

2、要有用户界面。要求至少采用文本菜单界面;鼓励采用图形菜单界面。

3、输出一份报表,鼓励自行增加新功能。

4、写设计报告(要求正规打印,A4幅面),内容包括:

l         题目

l         系统功能模块结构图

l         数据结构设计及用法说明

l         程序结构(画流程图)

l         各模块的功能

l         试验结果(包括输入数据和输出结果)

l         体会

l         参考文献

l         附录:程序清单及源程序软盘

5、凡发现抄袭,抄袭者与被抄袭者皆以零分计入本课程设计成绩并向学院报告。凡发现实验报告或源程序雷同,涉及的全部人员皆以零分计入本课程设计成绩并向学院报告。

五、设计指导:

介绍Visual C++程序设计的基本步骤及如何编译、调试和运行源程序。并给出Visuanl C++的常用编辑命令。最后介绍编译、连接和运行时的常见错误。

1)      程序设计基本步骤

程序设计方法包括三个基本步骤:

第一步分析问题。

第二步画出程序的基本轮廓。

第三步实现该程序。

a)       编写程序

b)       测试和调试程序

c)       提供数据打印结果

 

下面, 我们来说明每一步的具体细节。

 

第一步: 分析问题

 

在这一步, 你必须:

a)       作为解决问题的一种方法, 确定要产生的数据(输出)。 作为这一子步的一部分, 你应定义表示输出的变量。

b)       确定需产生输出的数据(称为输入), 作为这一子步的一部分你应定义表示输入的变量。

c)       研制一种算法, 从有限步的输入中获取输出。 这种算法定义为结构化的顺序操作, 以便在有限步内解决问题。就数字问题而言, 这种算法包括获取输出的计算, 但对非数字问题来说, 这种算法包括许多文本和图象处理操作。

 

第二步: 画出程序的基本轮廓

在这一步, 你要用一些句子(伪代码)来画出程序的基本轮廓。每个句子对应一个简单的程序操作。对一个简单的程序来说通过列出程序顺序执行的动作, 便可直接产生伪代码。然而, 对复杂一些的程序来说, 则需要将大致过程有条理地进行组织。对此, 应使用自上而下的设计方法。

使用自上而下的设计方法时, 你要把程序分割成几段来完成。列出每段要实现的任务, 程序的轮廓也就有了, 这称之为主模块。当一项任务列在主模块时,仅用其名加以标识, 并未指出该任务将如何完成。这方面的内容留给程序设计的下一阶段来讨论。将程序分为几项任务只是对程序的步设计。如下图所示的流程图1.。   

             

 1. 程序初步设计                    2. 第二级程序设计

如果把主模块的每项任务扩展成一个模块, 并根据子任务进行定义的话, 那么, 程序设计就更为详细了(见图2.)。这些模块称为主模块的子模块。程序中许多子模块之间的关系可象图2.中那样归结为一张图。这种图称为结构图。

我们设计程序是从程序的"顶部"开始一直考虑到程序的"底部"

 

第三步: 实现该程序

程序设计的最后一步是编写源码程序。 在这一步把模块的伪代码翻译成Turbo C语句。对于源程序, 你应包含注释方式的文件编制, 以描述程序各个部分做何种工作。便于你或其他人维护和修改。

2)      源程序的输入、编译和运行

Visual C++集成开发环境中建立一个新程序通常有以下几个步骤:

(1). 在编辑器中编写源文件。

(2). 生成可执行文件。

2. 程序存盘

3. 编译一个程序

4. 运行

源程序经编译无误后, 可以投入运行。

5. 磁盘文件目录

六、其他事项:

1) 课程设计地点:2  星期一~星期五 上午83 0—113 0,下午230-500

2) 课程设计报告递交时间,由于每班只有1周的课程设计时间,因此安排如下;

l         对于06网络2班,递交时间为第十九周星期五(713日)下午5:00

l         对于06网络1班,递交时间为第二十周星期五(720日)下午5:00

3) 成绩考核:

A、程序编程测试、设计报告、平时成绩分别占40%40%20%

B、在课程设计中若有玩电脑游戏、上网聊天、迟到、旷课,或其它违反课程设计等现象发生,将酌情处理。

 

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值