一个辣鸡的猜数字小游戏
#include <iostream>
#include <bits/stdc++.h>
#include <unistd.h>
#include <stdlib.h>
#include <time.h>
#include <stdlib.h>
using namespace std;
#define random(x) (rand()%x)
void jz();void wanfa(int n);void dr();void sr(int n);
int i,a=random(100)*11%100,s,smax=100,smin=1,p,q,b,rs,zs;
int moshi();
int main()
{
srand(time(0));
for(i=50;a==0;i++)
{
a=random(i);
}
a*=random(100);
a%=100;
cout<<"欢迎进入猜数字(5.0多人版)。\n";
sleep(1);
b=moshi();
jz();
zs=smax;
if(b>1)
{
cout<<"我想好了一个数,请玩家1输入一个1~"<<smax<<"之间的数。"<<endl;
sr(rs);
}
else
{
cout<<"我想好了一个数,请输入一个1~100之间的数。"<<endl;
dr();
}
srand(time(0));
return 0;
}
void jz()
{
cout<<"\033c";
cout<<"\n\n\n\n\n\n\n\n\n loading.\n";
sleep(1);
cout<<"\033c";
cout<<"\n\n\n\n\n\n\n\n\n loading..\n";
sleep(1);
cout<<"\033c";
cout<<"\n\n\n\n\n\n\n\n\n loading...\n";
sleep(1);
cout<<"\033c";
cout<<"\n\n\n\n\n\n\n\n\n loading....\n";
sleep(1);
cout<<"\033c";
cout<<"\n\n\n\n\n\n\n\n\n loading.....\n";
sleep(1);
cout<<"\033c";
cout<<"\n\n\n\n\n\n\n\n\n loading......\n";
sleep(1);
cout<<"\033c";
cout<<"\n\n\n\n\n\n\n\n\n loading.\n";
sleep(1);
cout<<"\033c";
cout<<"\n\n\n\n\n\n\n\n\n loading..\n";
sleep(1);
cout<<"\033c";
cout<<"\n\n\n\n\n\n\n\n\n loading...\n";
sleep(1);
cout<<"\033c";
cout<<"\n\n\n\n\n\n\n\n\n loading....\n";
sleep(1);
cout<<"\033c";
cout<<"\n\n\n\n\n\n\n\n\n loading.....\n";
sleep(1);
cout<<"\033c";
cout<<"\n\n\n\n\n\n\n\n\n loading......\n";
sleep(1);
cout<<"\033c";
cout<<"\n\n\n\n\n\n\n\n\n 加载完成!\n";
sleep(1);
cout<<"\033c";
}
void wanfa(int n)
{
cout<<"想进入游戏打1,想看玩法打2。想选择其他模式请打3。\n";
cin>>p;
if(p==1)
{
if(n==3)
{
cout<<"由于限制,多人模式仅支持3~100人进行游戏,请输入人数。想选择其他模式请打0。\n";
for(;;)
{
cin>>rs;
if(rs==0)
{
rs=2;
moshi();
}
else if(rs<3||rs>100)
{
cout<<"人数有误,请重新输入。想选择其他模式请打0。\n";
}
else
{
if(rs>=5&&rs<8)
{
smax=150;
cout<<"由于人数较多,数字上限将设为150。\n";
for(i=50;a==0;i++)
{
a=random(i);
}
a*=random(150);
a%=150;
}
if(rs>=8&&rs<15)
{
smax=200;
cout<<"由于人数较多,数字上限将设为200。\n";
for(i=50;a==0;i++)
{
a=random(i);
}
a*=random(200);
a%=200;
}
if(rs>=15&&rs<30)
{
smax=300;
cout<<"由于人数较多,数字上限将设为300。\n";
for(i=50;a==0;i++)
{
a=random(i);
}
a*=random(300);
a%=300;
}
if(rs>=30&&rs<60)
{
smax=500;
cout<<"由于人数较多,数字上限将设为500。\n";
for(i=50;a==0;i++)
{
a=random(i);
}
a*=random(500);
a%=500;
}
if(rs>=60&&rs<80)
{
smax=800;
cout<<"由于人数较多,数字上限将设为800。\n";
for(i=50;a==0;i++)
{
a=random(i);
}
a*=random(800);
a%=800;
}
if(rs>=80)
{
smax=1000;
cout<<"由于人数较多,数字上限将设为1000。\n";
for(i=50;a==0;i++)
{
a=random(i);
}
a*=random(1000);
a%=1000;
}
break;
}
}
}
sleep(1);
return;
}
else if(p==2)
{
cout<<"系统自动生成一个1~100之间的数。";
if(n-1>0)
{
cout<<"根据提示并轮流输入你们猜的数吧。\n";
}
else
{
cout<<"根据提示输入你猜的数吧。\n";
}
sleep(1);
wanfa(n);
}
else if(p==3)
{
sleep(1);
moshi();
}
else
{
cout<<"输入错误,请重新输入。\n";
sleep(1);
wanfa(n);
}
}
void dr()
{
for(i=1;;i++)
{
cin>>s;
if(s>smax||s<smin)
{
cout<<"超出范围,";
}
else if(s>a)
{
cout<<"猜大了,";
smax=s;
}
else if(s<a)
{
cout<<"猜小了,";
smin=s;
}
if(s==a)
{
break;
}
cout<<"请输入一个"<<smin<<"~"<<smax<<"之间的数。"<<endl;
}
cout<<"对!这个数就是"<<a<<"!\n";
if(i<=5)
{
cout<<"运气真好!";
}
else if(i<=8)
{
cout<<"真不错!";
}
else if(i<=15)
{
cout<<"运气中等!";
}
else if(i>15)
{
cout<<"运气真差!";
}
cout<<"你共用"<<i<<"次猜到了答案!";
}
void sr(int n)
{
for(i=1;;i++)
{
cin>>s;
if(s>smax||s<smin)
{
cout<<"超出范围,";
}
else if(s>a)
{
cout<<"猜大了,";
smax=s;
}
else if(s<a)
{
cout<<"猜小了,";
smin=s;
}
if(s==a)
{
break;
}
cout<<"请玩家"<<(i)%n+1<<"输入一个"<<smin<<"~"<<smax<<"之间的数。"<<endl;
}
cout<<"对!这个数就是"<<a<<"!\n";
if(i<=zs/25+1)
{
cout<<"运气真好!";
}
else if(i<=zs/25+4)
{
cout<<"真不错!";
}
else if(i<=zs/10+5)
{
cout<<"运气中等!";
}
else
{
cout<<"运气真差!";
}
cout<<"你们共用"<<i<<"次猜到了答案!";
}
int moshi()
{
cout<<"想玩单人版打1,想玩双人版打2,想玩多人版打3。\n";
sleep(1);
cin>>q;
if(q==1||q==2||q==3)
{
wanfa(q);
}
else
{
cout<<"输入错误,请重新输入。\n";
moshi();
}
return q;
}
链接在下是原创不是转载,链接里的是我用其他号发的
https://code.xueersi.com/home/project/detail?lang=code&pid=47557607&version=cpp&form=cpp&langType=cpp