案例描述:系统随机生成一个1到100之间的数字,玩家进行猜测,如果猜错,提示玩家数字过大或过小,如果猜对恭喜玩家胜利并退出游戏。
逻辑框图:
#include<bits/stdc++.h>
using namespace std;
int main(){
//添加随机数种子,作用利用当前系统时间生成随机数,防止每次随机数都一样
srand((unsigned int)time(NULL));
//1,系统生成随机数
int num=rand()%100+1;//rand()%100代表生成0-99的随机数,rand()%100+1生成1-100的随机数
cout<<num<<endl;
//2,玩家进行猜测
int val=0;
while(1){
cin>>val;
//3,判断玩家的猜测
if(val>num){
cout<<"猜测过大"<<endl;
}else if (val<num){
cout<<"猜测过小"<<endl;
}else{
cout<<"恭喜你猜对了!"<<endl;
//猜对 退出游戏
break;
}
}
}
运行结果:
? 系统根据时间随机生成的随机数:srand((unsigned int)time(NULL)),使用时要添加头文件 #include<ctime>,这个是真正意义上的随机数。需要注意的是,srand是要与下面的rand搭配使用,也就是说下面的int num=rand()%100+1并不能省略。
关于srand的详解请参考srand((unsigned)time(NULL))详解_srand((unsigned)time(null));-CSDN博客