您的位置:首页 > 编程语言 > C语言/C++

C++趣味案例——猜数游戏。

2018-03-30 20:52 253 查看
利用计算机产生随机数,然后由操作者进行猜测。通过提示语句帮助操作者进行猜数,要求每次运行程序电脑给出的数据都能不一样。

(1)由计算机随机出一个100以内的数让人猜。如果猜对了,则计算机给出正确的提示,否则给出错误的提示,并提示所猜的数是猜大了还是猜小了,然后结束游戏。实验难度:低。
首先,每次产生的数不一样。srand((int)time(0)); //原型:void srand(unsigned seed);用法:srand((unsigned)time(NULL))则使用系统定时/计数器的值作为随机种子。
//每个种子对应一组根据算法预先生成的随机数,所以,在相同的平台环境下,不同时间产生的随机数会是不同的。产生随机数:int random(int x)
{
int n=rand()%x;
return n;
}
#include<iostream>
#include<Ctime>
using namespace std;
int random(int x)
{
int n=rand()%x;
return n;
}
void main()
{
int m;
cin>>m;

srand((int)time(0));   //原型:void srand(unsigned seed);用法:srand((unsigned)time(NULL))则使用系统定时/计数器的值作为随机种子。
//每个种子对应一组根据算法预先生成的随机数,所以,在相同的平台环境下,不同时间产生的随机数会是不同的。
//for(int x=0;x<10;x++)
int num=random(100);
cout<<num<<endl;//输出产生的随机数
//cout<<random(100)<<endl;
if(num==m) cout<<"猜对了"<<endl;
else if(num<m) cout<<"猜大了"<<endl;
else cout<<"猜小了"<<endl;

}
(2)由计算机随机出一个100以内的数让人猜。如果猜对了,则计算机给出正确的提示和猜测的总次数,然后退出游戏。否则给出错误的提示,并提示所猜的数是猜大了还是猜小了,直到猜对数据才结束游戏。实验难度:中。#include<iostream>
#include<Ctime>
using namespace std;
int main()
{
int num,m;
srand(time(0));
cout<<"请输入猜测的数值"<<endl;
cin>>m;
num=rand()%100;
for(int i=0;num!=m;i++)
{

if(num<m)
{cout<<"猜大了"<<"请输入猜测的数值"<<endl;
cin>>m;}
else {cout<<"猜小了"<<"请输入猜测的数值"<<endl;
cin>>m;}
if(num==m)
cout<<"猜对了"<<' '<<"猜测次数为"<<i<<endl;
}
return 0;
}



(3)由计算机随机出一个100以内的数让人猜。如果猜对了,则计算机给出正确的提示和猜测的总次数,然后退出游戏。否则给出错误的提示,并提示所猜的数和正确值之间的大小关系(即猜大了还是猜小了)。游戏最多可以猜测10次,如果10次之内仍未猜中的话就退出。实验难度:高。//与第二个相比,只需要改变最后一个if语句,和for的条件
#include<iostream>
#include<ctime>
using namespace std;
int main()
{
int num,m,i;
srand(time(0));
cout<<"请输入猜测的数值"<<endl;
cin>>m;
num=rand()%100;
for(i=1;num!=m&&i<10;i++)
{
if(num!=m)
{
if(num>m)
{
cout<<"大了"<<' '<<"请再次输入预测值"<<endl;
cin>>num;
}
else
{
cout<<"小了"<<' '<<"请再次输入预测值"<<endl;
cin>>num;
}
}
}
if(i==10&&num!=m)
cout<<"猜测次数已达到十次"<<endl;
else
cout<<"正确"<<' '<<"总共输入"<<i<<"次"<<endl;
return 0;
}

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: