C猜数字游戏

别妄想泡我
833次浏览
2021年01月01日 02:49
最佳经验
本文由作者推荐

土豆丝的做法大全-是的拼音

2021年1月1日发(作者:章必果)


,.
一、题目
猜数字游戏
二、实验开发环境
Visual C++ 6.0

三、前言
猜数字游戏是休闲娱乐和智力锻炼的一种智力型游戏。
游戏规则:让系统随机产生一组数字, 由游戏者输入要猜的数字,
然后,系统会将输入的数字与随机生成的数字进行比较,当输入的数
字与随机生成的这组数字数值和位置完全对应时,就获得了胜利。
四、实验目的
(1)了解程序开发环境调试工具的使用;
(2)掌握小型系统的开发过程,学会用C++语言解决问题。
五、软件开发过程
(1)程序运行后呈现的游戏菜单上要有“开始游戏”、“查看游
戏规则”、“设置游戏难度”、“退出 游戏”等多项选择。因此可以采用
多文件结构来进行调用,由主函数来实现呈现游戏菜单与实现游戏者< br>选择的功能,根据游戏者的选择来有选择的调用其他文件中的函数。
主函数用于设计游戏开始界面和调用其他文件中的函数:


,.
< br>(2)当游戏者选择一项功能后,就要跳转到相应的界面,游戏开始
界面要清除掉,可以使用系统 界面清除功能:

#include
system(
( 3)当游戏者选择的某一功能运行结束后,要按任意键返回游戏开
始界面,因此主函数需要用到循环语句 :先定义变量a,当a不等于4
时执行程序,后面要结束程序时,令a等于4就可以结束循环,进
而结束程序:


,.

(4)首先游戏者查看游戏规则,当游戏者 选择功能2后,主函数调
用rules()函数,这个函数就会输出游戏规则:

( 5)开始游戏前要求先设置游戏难度,否则按默认设置难度进行游戏。
事先将游戏难度系数设置为一个全 局变量,并赋初值1(即最低难度
系数),若有进行难度设置,则可通过调用函数改变难度系数,游戏< br>难度系数必须为1~10,如果输入其他数字,系统会要求重新输入:


,.

(6)游戏者开始游戏后,首先系统产生与游戏难度系数相等的几个
随机数并存放在 数组a[]中,这需要一个函数来实现:

然后提示游戏者输入要猜的数字,输入后存放在数组b[]中;
将数组a和b进行比较,统计出数据相同且位置相同的个数k和数
据相同但位置不同的个数p:


,.

游戏函数也要用循环语句,直到游戏者输入完全正确为止
(7)若游戏者想知道答案或中途退出游戏,则第一个数字输入10即
可:

实验源程序:

headf.h


,.
void rules();
void game(int c);
int exit();
int classes();

#include
#include
#include
#include
#include
using namespace std;
int a,c=1;
int main()
{








while (a!=4)
{
cout<< ----------------
cout<< 猜数字游戏
cout<< ------------ ----
cout<<开始游戏(yn)?
cout<<查看游戏规则


,.






cout<<设置游戏的难易 度
cout<<退出游戏
cout<<请选择功能:
cin>>a;
switch(a)
{case 1:system(
case 2:system(
case 3:system(







}

#include
#include
using namespace std;
void rules()
{
case 4:system(
}
cout<<按任意键继续....
getch();
system(
}
return 0;


,.


cout<<猜字 游戏规则:
cout<<可先设置难易度,如果不设置,则默认最低级,即第1级,难易度可分为1~1 0
级,1级猜一个数字,2级猜两个数字....10级猜10个数字;
cout<<请输入猜测的数字(0~9),输入数字时要用空格分隔开每两个数字;

cou t<<提示输入的数字数值正确和位置正确的个数,输入的数字数值正确但位置
不对的个数;
cout<<不断的重复2、3步,若猜数完全正确,提示游戏者胜利;若试了15次还不
正确,宣布游 戏者失败。
}

#include
#include
int classes()
{







double c,y=1;
while(y)
{
cout<<设计游戏的难易度->
cout<<请 输入1到10之间的任意正整数n为难度系统(难易度级别):
cin>>c;
if(c== 1||c==2||c==3||c==4||c==5||c==6||c==7||c==8||c==9| |c==10) y=0;


,.
else cout< }
return c;
}

#include
#include
#include
#include
using namespace std;
void game(int c)
{
int a[10];
double b[10];
void create_Ary(int a[],int c);
cout<<游戏的难易度为:
10)
create_Ary(a,c);
int x=1,n=1;
while (x)
{
int i,j,k=0,p=0;
(若要答案且退出,第一个数字输入


,.










cout<<请输入个要猜的数字(用空格隔开每个数字):
for(j=0;j>b[j];
for(j=0,k;j{
if(b[j]==a[j]) k++; 统计出数据相同且位置相同的个数k
}
for(j=0;j{
for(i=j+1;i {
if(b[i]==a[j]) p++;
}
}
for(j=0;j{
for(i=j+1;i {
if(a[i]==b[j]) p++;
}
}
if(k==c)
{
统计出数据相同但位置不同的个数p



































,.









cout<<数据相同且位置相同的个数:
cou t<<数据相同但位置不同的个数:
if(c>=3&&n==1) cout<<第一名!你的天赋简直是前无古人后无来者!!!















else
{
cout<<数据相同且位置相同的个数:













}
else if(nc<=2) cout<<你的天赋非常好,太棒了!!
else if(nc<=3) cout<<你的天赋不错,赞一个!
else if(nc<=4) cout<<你是有天赋的,继续努力!!
else cout<<你是游戏的胜利者!
cout<x=0;
cout<<数据相同但位置不同的个数:


















if(n==15)
{



}
cout<cout<<你已经尝试了15次,仍未成功,游戏失败!
x=0;


,.












}












}










}
n++;
if(b[0]==10)
{






}
cout<for(j=0;j cout<cout<x=0;
cout<<游戏已结束,

void create_Ary(int a[],int c)
{






srand(time(0)); 使随机数函数rand产生一序列随机数而设置种子值
int i=0,j,x;
while (i{


x=rand();
if (x<0||x>=10) continue;


,.




}



}
j=0;
while (j<=i&&a[j]!=x) j++; 舍弃相同元素
if (j>i) a[i++]=x; 不同的元素送入数组

#include
#include
using namespace std;
int exit()
{











int main();
char b;
while (b!='y'&&b!='Y'&&b!='n'&&b!='N')
{
cout<<退出游戏吗?(yn)
cin>>b;
if(b=='y'||b=='Y')
{


}
cout<<欢迎下次再来!
return 4;


,.



}
else if (b=='n'||b=='N') return 0;
else cout<<输入错误,请输入y(Y)或n(N).
}
六、系统测试情况

(1)开始游戏

(2)输入2,查看游戏规则


,.
(3)按任意键返回主菜单后,输入3,设计游戏难度

(4)按任意键返回主菜单后,输入1,开始游戏

(5)若游戏者想知道答案或中途退出游戏,则第一个数字输入10即


,.

化彩妆步骤-呵护心灵


幸福单车-西游记读后感200字


花脸稿-芭蕉扇


野草图片-辞职信怎么写


上海自考报名-大阅兵观后感


为什么电脑开不了机-什么是文明


朋友的朋友歌词-人与路


南京博物馆-爱迪生与手机