- 4
- 0
- 约1.63万字
- 约 23页
- 2020-08-19 发布于湖北
- 举报
目 录
TOC \o 1-3 \h \z 1 需求分析 1
1.1 问题描述 1
1.2 输入数据要求 1
1.3 输出数据要求 2
1.4 开发环境和工具 2
1.5 成员分工 2
2总体设计 3
2.1总体设计思路 3
2.2模块结构图 3
2.3模块说明 4
3详细设计 6
3.1数据类型定义 6
3.2Scan模块实现 6
3.3Save以及Read模块实现 8
3.4Count模块实现 9
4 测试结果与分析 11
4.1.输入数据计算结果 11
4.2数据的文件保存 12
4.3从文件读入数据并计算结果 12
5个人总结 14
6 附 录 15
6.1源代码 15
1 需求分析
问题描述
从键盘读入比赛数据;从文件读入比赛数据;将从键盘输入的比赛数据存入文件(一个文件可存放多局比赛的数据)。将比赛数据显示在屏幕上计算比赛结果及统计数据,并显示在屏幕上。
一局(GAME)保龄球分为10格,每格里有两次投球机会,如在第一次投球时全中,就不需要投第二球。每一格可能出现三种情况:
? 1.失球(MISS)
? 无论何种情况,在一格的两次投球时,未能击倒10个瓶,此格的分数为击倒的瓶数,未击中用一个(-)符号表示。
? 2.补中(SPARE)
? 当第二次投球击倒该格第一球余下的全部瓶子,称为补中,用一个(/)符号表示。补中的记分是10分加上下一次投球击倒的瓶数。
? 3.全中(STRIKE)
当每一格的第一次投球击倒全部竖立的十个瓶时,称为全中,用一个(×)符号表示。全中的记分是10分(击倒的瓶)加该球员下两次投球击倒的瓶数。
? 但在第十格中情况比较特殊:
(1)如第二次投球未补中,则第十格得分为第九格得分加上第十格所击倒瓶数。
(2)如第二次投球补中,则追加一次投球机会,第十格得分为第九格得他加上10加上追加一次投球击倒瓶数。
(3)如第一球为全中,则追上加二次投球机会,第十格得分为第九格得分加上10加追加二次投球击倒的瓶数。因此从第一格到第十格的两次追加投球,都为全中,则为12个全中,得分为满分300分。
输入数据要求
第一格第一次击倒瓶数:
第一格第二次击倒瓶数:
第二格第一次击倒瓶数:
第二格第二次击倒瓶数:
…………………………
输出数据要求
输入数据显示格式:
序号
1
2
3
4
5
6
7
8
9
10
9|1
6|3
8|2
7|2
10|0
10|0?
10|0
4|5
8|2
10|7|3
积分
输出数据显示格式:
序号
1
2
3
4
5
6
7
8
9
10
9|/
6|3
8|/
7|2
×|
×|?
×|
4|5
8|/
× | 7 | /
得分
16
25
42
51
81
105
124
133
153
173
开发环境和工具
开发环境:Windows 7
开发工具:Visual C++ 6.0
成员分工
熊宇堂:计分模块、数据输入模块、文件读写模块、选择模块、系统测试
张 嵩:数组结构体转换模块、数据输出模块、屏幕显示模块、系统测试
2总体设计
2.1总体设计思路
设计思路
因为这是一个计分系统,所以在主函数中采用switch结构来达到输入数字来进行选项操作。然后通过定义大量的函数,然后在swtich中来一个个调用函数,来进行运算和处理。
由于要使得系统能一次输入多局比赛并保存,读写文件时,先把每局数据存入一个最多能存10局比赛数据的结构体中,然后将整个结构体存入文件,读取文件时,可以自由选择载入保存比赛数据的文件,并自行选择需要显示和计算的比赛局数,然后进行显示,读写文件一律采用二进制方式读写。
输入比赛数据以及输出比赛数据时,利用循环语句依次输出;对于保龄球第十格击球的特殊性,再加入if语句判断,然后根据不同情况进行输入或者计算。
显示部分先定义count函数用来在得到比赛数据后进行计算积分,然后一种显示是输入数据后直接计算显示;还有一种是读取文件中比赛数据,然后再进行积分运算,再显示结果。
在现实中,充分运用清屏函数,使程序显得直观简洁。
数据存储
在不退出程序的时候,如不进行将比赛数据存入文件的选项,每局比赛都存在个最多包含10局比赛数据的结构体中,然后可以选择是否把整个结构体读入文件并存储以便下次直接读取并计算显示。
2.2模块结构图
根据需求将系统划分为两个个功能模块,函数之间的调用关系如图1.1所示。Main(switch)
Main(switch)
Scan
Read
Print
Save
Count
Print
Count
Changein
Changeout
图1.1 保龄球
您可能关注的文档
- 八年级物理下册 9.1《压强》导学案(无答案)(新版)新人教版.doc
- 闭路电视监视系统技术规范书(风电场招标专用).doc
- 保险公司早会游戏.ppt
- 管理高尔夫实战训练76.ppt
- 船闸灌水廊道进口布置型式的设计与试验.docx
- 【试卷解析】福建省厦门双十中学高三上学期期中数学试卷(文科).doc
- 大学生暑期 社会实践策划书.doc
- 古代医家结 合针灸临床实践中发现的经脉病候.ppt
- 沉积岩单轴抗压强度与弹性模量关系研究.docx
- 北京市海勤律师事务所关于信阳华信投资集团有限责任公司发行公司债券的法律意见书.pdf
- 宣贯培训(2026年)《NYT 4512-2025 非洲菊疫病抗性鉴定技术规程》.pptx
- 宣贯培训(2026年)《NYT 4514-2025木薯副产物综合利用导则》.pptx
- 宣贯培训(2026年)《NYT 4513-2025木薯全程机械化生产技术规范》.pptx
- 宣贯培训(2026年)《NYT 4470-2025全株玉米青贮质量分级》.pptx
- 宣贯培训(2026年)《NYT 4468-2025玉米供需平衡表编制规范》.pptx
- 宣贯培训(2026年)《NYT 4469-2025全株玉米青贮质量评定 综合指数法》.pptx
- 宣贯培训(2026年)《NYT 4474-2025东北地区玉米-大豆轮作生产技术规程》.pptx
- 宣贯培训(2026年)《NYT 4472-2025玉米耐盐碱鉴定评价技术规程》.pptx
- 宣贯培训(2026年)《NYT 4473-2025玉米抗旱性鉴定评价技术规程》.pptx
- 宣贯培训(2026年)《NYT 4478-2025甘薯收获技术规程》.pptx
最近下载
- 基于51单片机的智能宠物养殖箱系统设计.docx VIP
- 天津忠旺铝业有限公司铝及铝合金建设项目环境影响评测报告.pdf VIP
- 股权投资基金合伙协议模板(双GP+委托管理模式) (最全).doc VIP
- 【羿科安全 内部培训】07 足部防护培训.pptx VIP
- 麻黄碱脱氧后处理结晶工艺的论述(第一部分).pdf VIP
- 七年级语文下册第二单元5黄河颂省公开课一等奖新课获奖课件.pptx
- 最新《黄河颂》公开课一等奖课件 .pptx VIP
- 智能家居检测系统.docx
- (81格)舒尔特方格-儿童注意力训练(每日一练,共27份).docx VIP
- (81格)舒尔特方格-儿童注意力训练(每日一练,共20份).docx VIP
原创力文档

文档评论(0)