猜数字游戏实验报告11
缅怀先烈手抄报图片-武元衡
* *
C
语言课程设计报告
题
目:
班 级:
组 名:
猜数字游戏
通信工程
第三组
* *
指导教师:
日 期:
李梅
2011121
* *
目 录
C语言课程设计报告 ....................................
..................................................
.......................... 1
目 录 ........
..................................................
..................................................
............................ 3
1 需求分析 ....
..................................................
..................................................
........................ 5
1.1问题分析 .......
..................................................
..................................................
.......... 5
1.2采用技术 .....................
..................................................
..............................................
5
1.3设计目标 ................................
..................................................
................................... 5
2
总体设计 .............................................
..................................................
................................. 6
2.1程序设计思路简介 ..................................
..................................................
................ 6
2.2系统模块设计 .............
..................................................
..............................................
6
3 详细设计 .................................
..................................................
.............................................
7
3.1模块功能说明 ..............................
..................................................
............................. 7
3.2程序设计模块流程 ..................................
..................................................
................ 7
3.3系统流程图 ..............
..................................................
.................................................
8
4 测试结果 .................................
..................................................
.............................................
9
4.1 游戏开始界面 .............................
..................................................
............................. 9
4.2 猜中结果 .
..................................................
..................................................
............. 10
4.3 10内未猜中结果 ............
..................................................
....................................... 10
4.4 再次接着猜 ....................................
..................................................
........................ 11
4.5 未猜中结束游戏...
..................................................
.................................................
11
5 程序清单 ................................
..................................................
............................................
12
* *
6 感想 ...................
..................................................
..................................................
............... 16
时间安排表 .................
..................................................
..................................................
......... 17
时间 ..........................
..................................................
..................................................
............. 17
内容 ......................
..................................................
..................................................
................. 17
责任人 .................
..................................................
..................................................
................. 17
课程设计评定表 .............
..................................................
..................................................
..... 18
附录2 问题记录 .......................
..................................................
......................................... 21
* *
1 需求分析
1.1问题分析
在本次实验中,我
们将尝试编写一个猜数游戏程序。结合现有的我们学过的C
语言知识,我们可以编写一段程序,由计算机
随机产生一个数字,由玩家输入数字,
来实现猜数字游戏的过程。
1.2采用技术
按照实验要求,我们将使用C语言运用Turbo C来编写一个程序来实现这个猜
数字的过程
。在程序中,我们将用到学过的while等C语言常用语句,调用
rand()%100产生随机数等
各类函数来完成猜数字实验程序。
1.3设计目标
实现计算机产生随机正整数功能;实现对
猜数字大小提示功能;实现提示所猜
的次数;实现猜数字次数上限功能;实现对不同次数得到结果评定功
能;实现再次
开始游戏功能;
* *
2 总体设计
2.1程序设计思路简介
编程先由计算机“随机生成”一个1~100之间的数请人猜,如果
人猜对了,
在屏幕上输出人猜了多少次才猜对此数,以此来反映猜数者“猜”的水平,则结束
游
戏;否则计算机给出提示,告诉人所猜的数是太大还是太小,最多可以猜10次,
如果猜了10次仍未猜
中的话,则停止本次猜数,然后继续猜下一个数。每次运行
程序可以反复猜多个数,直到操作者想停止时
才结束。
2.2系统模块设计
本次程序主要分为三个模块进行设计。分别为随机产生被猜数
字模块,程序主
体循环猜数字模块,最后输出模块。
* *
3 详细设计
3.1模块功能说明
模块1:随机产生数字
该模块使用1+rand()%100函数产生最初的随机数字,并将其赋给point
作
为被猜数字。
模块2:
该模块为本程序主要部分,将以是否猜对为判断条件
,是否大于10次为循
环上限,使用while循环及if·else语句来完成猜数字的过程。
模块3:
该模块用于猜数字最终结果及成绩判定的输出。
3.2程序设计模块流程
猜数字游戏
随
机
产
生
数
字
猜
数<
br>字
循
环
输
出
猜
数
字
结
果<
br>
* *
3.3系统流程图
开始
定义变
量point、
num、count
产生随机数point
是
输入数字num
否
point=num?否count>=10?
是
是
重新猜?
输出
否
结束
* *
4 测试结果
4.1
游戏开始界面
* *
4.2 猜中结果
4.3
10内未猜中结果
* *
4.4
再次接着猜
4.5 未猜中结束游戏
*
*
5 程序清单
by lglpgtx
#include
#include
#include
main() *函数入口*
{
int point,num=0,count=0;
*声明变量:point是产生的随机数,
num是用户猜的数,并初始化为0,
count是猜数的次数*
char c;
printf( *输出提示你要猜一个1到100之
间的数*
printf(
*输出提示你能否猜出*
printf(
*输出提示你开始猜第一个数*
srand(time(NULL));
*以当前时间为种子,产生随机数*
point=1+rand()%100;
*产生一个1到100的随机数*
* *
while(num!=point)
{
*循环的条件是猜的数和随机数不同*
count++; *计数器加一*
scanf( *猜入一个数*
getchar();
if(count>=10)
{
printf(
printf(
printf(提示是否再来一次*
scanf( *输入y or n*
if(c=='y')
{
count=0;
num=0;
point=1+rand()%100;
printf(
}
else break;
* *
}
else if(num
else if(num>point)
*猜高了显示信息*
的次数*
printf(
else
if(num==point) *猜对了显示信息*
{
printf(
if(count<10)
*10次以内猜对时显示信息*
printf(
else
if(count=10) *第10次猜对时显示信息*
printf(
printf(游戏结束提示猜
printf(提示是否再来一次*
scanf( *输入y or n*
* *
if(c=='y'){ *执行语句的条件是输入的为y*
count=0;
num=0;
point=1+rand()%100; *产生一个1到100的随机数*
printf( *提示开始猜第一个数*
}
}
}
system(
*暂停程序,等待按回车键继续执行下一语句*
}
* *
6 感想
经过一
周的C语言课程设计,我不但掌握了课本的一些基本知识,
还自己动手制作出了一个简单的猜数字游戏程
序。虽然在编程过程中经
常会犯错,但是这次之后感觉对C语言却有了更深入的了解。从一开始
的没有头绪到最后按照老师的要求逐步完成程序,这中间虽然经历了许
多困难,但是经过调试修改后让我
掌握了更多正确的语法知识及解决方
案。在设计程序的同时也加强了自己的实践能力及自学能力,培养了
自
己分析问题、编程和动手能力。这次实践是我在学习C语言道路上的一
次难得的体验。(余芳
芳)
通过
C语言课程设计,使我对C语言有了更深入的理解,同时也增
强了我独立思考与团队协作的能力,对我来说是一次难忘的经历。在今
后的C语言学习中,我会
更加努力培养自己分析问题,解决问题的能力,
让自身得到更大的锻炼。(张亮)
在编写报告的过程中,虽然遇到了很多困难,但是经过查询资料
以及和组员的讨论,最终问题得到了圆满
的解决。在这其中让我学到了
很多课本上没有的知识,也让我明白了,只有通过实践才能更好的锻炼自己,使自己在C语言的学习道路上取得更大的进步。(孙玉婷)
* *
时间安排表
时间
20111120~25
20111126
20111127~30
2011121
2011122
2011123~4
内容
编写程序
检查程序
写实验报告
报告目录,流程图制作及排版
制作PPT
修改PPT
责任人
余芳芳
孙玉婷 张亮
孙玉婷
余芳芳
张亮
余芳芳
* *
课程设计评定表
项目名称
项 目 组
组 成 员
余芳芳:编写程序
孙玉婷、张亮:检查程序
孙玉婷:写实验报告
余芳芳:报告目录、流程图制作及排版
张亮:PPT的制作
余芳芳:PPT的修改
第三组
猜数字游戏
项目组长
张亮 余芳芳 孙玉婷
余芳芳
个
人
工
作
简
介
组
长
评
语
教
师
评
语
项目成绩(百分制)
作品(30%) 报告(30%)
ppt(15%) 表达(10%) 提问(15%)
在制作过程中大家都很有团队协作精神,认
真学习,努力解决困
难,共同学习进步,每个人的收获都很多。
* *
总成绩
个人成绩(百分制)
学号
1032500101
25
1032500101
02
1032500101
04
姓名 组长评定 项目成绩 总成绩
张亮 良好
孙玉婷 良好
余芳芳 良好
* *
附录1 每周工作记录
组名
本
周
工
作
概
要
下
周
工
作
计
划
是否按计划完成? 是 责任人
余芳芳
PPT的制作及审查等后续工作
程序的编写审查及实验报告的编写审查
第三组 日期 20111120 编号 003
建
议
建议大家以后无
论做什么工作都要先独立思考,然后再和大家讨论。
自己能做的要尽量独立完成。
* *
附录2 问题记录
序号
1
问题描述
连续猜数的实现
日期
201111
23
2
流程图的制作 201111
28
查资料讨论后共同解决
解决方案
查资料后调试解决