- 9
- 0
- 约6.48千字
- 约 11页
- 2019-02-01 发布于安徽
- 举报
实用标准文案
精彩文档
设计课题:猜数字游戏
一、问题描述:
该游戏可以由程序随机产生或由用户输入四个0到9之间的数字,且不重复。玩游戏者通过游戏提示输入八次来匹配上面所输入的数字。A表示位置正确且数字正确,B表示数字正确而位置不正确。
二、功能要求:
1、本游戏显示这样的菜单:
随机产生数据
用户输入数据
退出游戏
2、游戏成功与否都能返回主菜单
三、算法提示:
数据结构:数组
用简单的程序设计方法
四、测试数据:
测试数据: 3792
第一次输入: 1234
0A2B
第二次输入: 5678
0A1B
第三次输入: 0867
0A1B
第四次输入: 9786
1A1B
第五次输入: 1794
2A0B
第六次输入: 2793
2A2B
第七次输入: 3792
4A0B
游戏成功!!!
4 猜数字游戏
4.1问题分析
编写一个猜数字游戏,有一定的容错功能,界面友好,功能齐全。
游戏规则:
a,一个四位数,各位上的数字不重复,从1到9。
b,按以下提示猜出这个四位数。
c,每次猜测输入的数据给出类似的提示*A*B。
d,其中A前的*代表你本次猜对了多少个数字。
e,其中B前的*代表你本次猜对的数字并且位置正确的个数。
4.2数据结构与算法分析
本程序多次利用到了调用函数参数,for循环等,通过比较输入的四个数字和电脑随机的数字值大小来判断猜对的数字正确与否。
函数间的调用关系图如下:
输入用户所猜的数函数:
输入用户所猜的数
函数:Get_b( )
打印得分
函数:Printscore( )
随机产生4
随机产生4个数函数:Rnd ( )
还要不要玩函数:
还要不要玩
函数:Iswantplay( )
主函数;
int main()
初始化变量
初始化变量函数:Reset( )
输出
输出结果
函数:Printresult( )
电脑判断
电脑判断是否正确
函数:Check_ab( )
图 4-2
6、流程图 比较输入的数和随机生成的数.给出提示.A、B表示表示数对位置也对,B表示数对位置不对1 Main()
比较输入的数和随机生成的数.给出提示.A、B表示
表示数对位置也对,B表示数对位置不对
1
Main()
输入四位不相同的数字,如果输入的不是数字或者输入的数字有重复,则重新输入
输入四位不相同的数字,如果输入的不是数字或者输入的数字有重复,则重新输入
退出
退出
判断结果
判断结果
还要不要玩
还要不要玩名字
退出
退出
图 4-3
4.3核心代码
#include iostream.h
#include stdio.h
#include math.h
#include stdlib.h
#includetime.h //选用了以上几个程序为编程服务
int Rnd( ) //产生十以内的随机整数。
{
int Rteger;
Rteger=rand( )%10;
return Rteger;
}
void Get_b(int b[]) //得到用户输入的四位数,存储到数组b[4]中。
{
int i,j, m,n=10000;
cinm;
if(m9999||m999)
{cout输入错误请重新输入:endl;
cinm;
}
for(i=0;i=3;i++)
{
b[i]=m/(n/10);
m=m-b[i]*(n/10);
n=n/10;
}
for(i=0;i=3;i++)
for(j=0;j=3;j++)
if(b[i]==b[j]i!=j)
{ cout输入重复请重新输入endl;
Get_b(b);
}
}
void Iswantplay(char * wantplay) //判断用户还想不想玩。
{
cout是否再玩一次:(y/n)\n;
cinwantplay;
cout======================================================\n\n\n;
}
void Reset(int A[],int B[]
原创力文档

文档评论(0)