猜数字
我想做一个猜数字的小游戏,范围是1-100,那么首先我们需要出现一个随机数,于是我使用rand函数,定义一个整型其初值为rand()%100+1(因为是1-100,所以需要在取模于100时+1,否则游戏内不会出现这个数)。但在运行的时候我发现了问题,为何每一次随机出来的数都完全一致呢?通过上网搜索,我才知道每一次rand函数运行都会查询是否使用过srand函数,若之前没有调用srand(seed),那么系统会自动给seed赋初始值,即srand(1)。于是我使用了cmath头文件,用当前时间来给随机值赋值。
#include<cmath> srand((unsigned int)time(NULL)); int num = rand() % 100 + 1;
接下来就要到猜数字环节了,先创建一个变量为玩家输入的数,玩家输入的数如果大于随机数,那么就应该提示“猜测过大”;如果输入的数小于随机数,那么就应该提示“猜测过小”,每次提示过后重新输入数字。这个过程中不应该退出游戏,所以我使用while(1)这个死循环,如果答对了,那么就可以提示玩家“恭喜您猜对了”,并用break退出循环。如此一来,我们的猜数字小游戏就完成了。
#include<iostream>
#include<ctime>
using namespace std;
int main(){
cout << "请在一到一百的整数中猜数字" << endl;
srand((unsigned int)time(NULL));
int num = rand() % 100 + 1;
int val = 0;
while (1)
{
cin >> val;
if(val >num)
{
cout << "猜测过大" << endl;
}
else if(val < num)
{
cout << "猜测过小" << endl;
}
else
{
cout << "恭喜您猜对了" << endl;
break;
}
}
system("pause");
return 0;
}


九号公司成长空间 1人发布