C语言综合程序设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。


:工作年限指任科级干部的年月。
数据项名:考试成绩
组 成:政策法律基础成绩+语文成绩+英语成绩+计算机成绩+口试成绩
数据项名:个人成绩
组 成:考试成绩+学历分+年龄分+工作经历分+口试分
数据项名:总分
组 成:考试成绩+学历分+年龄分+工作经历分+口试分
2.2 第一层数据流图
应聘者信息和考试成绩
读入
招聘截止日期
1
1*:成绩总表+应聘者人数
信息 总表
信信息息处处理理
2
被查询人姓名
1*
输出
3
成绩总表 录取通知书 被查询者成绩
图 2 招聘干部录取系统数据流图(第一层)
数据流名:信息总表 组 成:{个人信息+考试成绩}* * *+招聘截止年月 文 件 名:成绩总表 组 成:姓名+个人成绩 组 织:按总分从高到低顺序。 加 工 名:读入 编 号:1 激发条件:需招聘成绩表,或需要确定干部录取情况,或需要某指定者的成绩 加工逻辑:1 将“应聘者信息与考试成绩”读入信息总表中
0年 1年
2年
6年
0分
70 分
100 分
20 分
其它年龄(可以有小数部分)的分数按线性插值确定。
6 年以上 0分
用 C++语言实现招聘干部录取系统。该系统在磁盘上存贮如下信息: 1、应聘者报名表。表中记录了每位应聘者的有关信息,其中包括:姓名、 性别、出生年月、最后学历、任科级干部有多少年月、现工作单位。 2、每位应聘者 5 项考试的成绩。
C+ + 综 合 程 序 设 计
( 2015- 2016- 2)
成贤学院计算机课程小组
二零一六年二月
1
1 题目与要求
1.1 题目:招聘干部录取系统
设某市公开招聘 5 名副局长。招聘过程中要进行 4 项笔试(政策法律基础、
语文、英语、计算机基础)和一项口试(考察处理问题能力)。录取时对于年龄
在 30~55 的应聘者按总分从高到低录取。总分的构成如下:4 项笔试分(百分
制);口试分(百分制)乘 2;学历分;年龄分;工作经历分。后三种分数的计
算方法如下:
学历分:
博士
硕士
本科
其它
100 分
75 分
50 分
0分
年龄分:
55 岁
50 岁
40 岁
35 岁
30 岁
70 分
75 分
100 分
80 分
70 分
其它年龄(可以有小数部分)的分数按线性插值确定。
工作经历分(仅考虑任科级干部年限):
干部招聘主模块 Invcad.cpp
信息总表
信息总表
成绩总表
成绩总表
读 入 Reading.cpp
信息处理 Treatinf.cpp
输 出 Export.cpp
图 6 系统顶层模块结构
下面考虑三个第一层模块的下属模块。 由于输入的功能就是“读入”加工的功能,将招聘截止年月和应聘者信息与 考试成绩读入信息总表中,比较简单,不用为其设立下属模块。现将其更名为“读 入”模块。 再设计“输出”模块的下属模块。根据系统要求,输出模块应根据用户要求 完成“打印成绩总表”、“打印录取通知书表”和“模块的下属模块”。根据系统 要求,输出模块应根据用户要求完成“打印成绩总表”、“打印录取通知书表”和 “打印被查询者个人成绩”三项功能中的一项或几项,所以可为“输出”模块建 立如图 7 所示的三个模块。 下面考虑设计“信息处理”模块的下属模块。从图 3 的数据流图可见,可为 “信息处理”模块设立两个下属模块:“计算填表”和“排序”。前一个模块完成 计算各项分数并填入初步成绩表,循环调用该模块直至填表完毕。 至此,我们可以画出整个软件的模块结构图。如图 9。其中每一个模块都用 了一个表示符合给予命名。 下面列出各模块的功能说明:
该系统的功能如下: 1、 输入应聘者的信息和 5 项考试成绩; 2、 输出按总分从高到低排列的成绩表,表项有姓名、8 项分数、总分。设
应聘者不超过 50 名; 3、 输出 5 份录取通知书; 4、 查计要求 一、文档 1、 需求说明书(分层的数据流图、数据词典、小说明); 2、 模块结构图,每个模块的说明; 3、 每个模块的算法及使用的数据结构; 4、 每个模块的编码和整个程序的编码; 5、 各模块的测试用例及测试结果; 6、 使用手册。 二、程序 1、 设计若干命令以表示要求程序执行相应的功能; 2、 输入到程序的数据名称及格式应通过提示信息告诉用户。能拒绝非 法数据,同时给出重新输入数据的提示。当输入数据量很大时,应 建立磁盘文件,以便重复演示程序功能; 3、 程序的运行结果要以清晰可读的形式显示出来,并可打印及存贮, 以便查阅。
2 画数据流图 2.1 顶层数据流图
应聘截至日期
成绩总表
应聘者信息和考试成绩
招聘干部 录取系统
录取通知书表
被查询人姓名
被查询者个人成绩
图 1 招聘干部录取系统数据流图(第 0 层)
相应的数据词典条目:
数据流名:招聘截止日期
组 成:年+月
数据流名:应聘者信息与考试成绩
组 成:{个人信息+考试成绩}

:n 为应聘人数:n≤50。
2.4 关于加工“输出”的分解
3.1
输出成绩总 表
成绩总表
成绩总表+应聘者人数 被查询人姓名
3.2
输出录取 通知书
3.3
输出被查 询者成绩
录取通知书 被查询者成绩
图 4 加工“输出”的分解
2.5 系统数据流图
应聘者信息和考试成绩
初步成绩表
读入
信息总表 计算填表
排序
打印输出成成绩绩总总表表
1*
输出录取通知书
1* 1*
招聘截止日期 1*:成绩总表+应聘人数
图5
被查询人姓名
输出被查 询者成绩
招聘干部录取系统数据流图
询者成 绩
5
3 画模块结构图 从图 5 可以看出,从 2.1 到 2.3 均为信息处理部分,可视作系统的中心变换
部分。那么从加工 1 至加工 2.1 的“信息总表”便是系统的逻辑输入,从加工 2.3 到文件成绩总表的数据流程便是系统的逻辑输出。我们为中心变换部分和其前、 后的部分各设计一个模块,因此可画出系统顶层的模块结构图。
数据流名:成绩总表
组 成 :{姓名+个人成绩}

:按总分从高到低排列。
数据流名:录取通知书表
组 成:{姓名+被录取的信息}
注:1.总分前五名的录取通知单。
2.若应聘者不足五人,按实际人数处理。
数据流名:被查询者的个人成绩
3
组 成:姓名+个人成绩
数据项名:个人信息
组 成:姓名+性别+出生年月+最后学历+工作年限+现工作单位
2 读入招聘截止年月
2.3 关于加工“信息处理的”的分解
初步成绩表
信息总表
计算填 表
排序
成绩总表 应聘者人数
2.1
2.2
图 3 加工“信息处理”的分解
4
文件名:初步成绩总表 形成:姓名+个人成绩已填入的应聘者个数。 加工名:计算填表 编号:2.1 激发条件:信息总表已经形成 加工逻辑:将应聘者的学历、年龄和工作年限计算成学历分、年龄分和工作经历 分,并计算总分,将应聘者所有成绩填入初步成绩表中。 加工名:排序 编号:2.2 激发条件:初步成绩总表按总分高到低排序 加工逻辑:按总分的高低从高到低排列个人成绩和姓名。
相关文档
最新文档