游戏aaaa

# include & ltiostream & gt

# include & ltstdio.h & gt

# include & ltstdlib.h & gt

# include & lt字符串& gt

# include & lttime.h & gt

使用命名空间std

//猜测最大次数

const int MAX _ GUESS _ TIME = 8;

void ShowMenu();//显示菜单

void show gameinfo();//显示游戏介绍。

string GetNum();//生成一个不包含重复数字的四位数。

string calc result(string strResult,string strInput);//比较两个数并输出?答?b结果

bool CheckInput(字符串strInput);//检查输入的有效性,简单处理,添加其他判断。

int main()

{

字符串strResult

string strInput

int iGuessTime = 1;

cout & lt& lt" = = * *欢迎来到猜数字游戏* * = = "

ShowMenu();

CIN & gt;& gtstrInput

while (1)

{

if (strInput == "1 ")

{

打破;

}

else if (strInput == "2 ")

{

ShowGameInfo();

}

else if (strInput == "0 ")

{

cout & lt& lt“谢谢您的使用,再见!\ n ";

返回0;

}

其他

{

cout & lt& lt“对不起,请输入正确的号码!\ n ";

}

ShowMenu();

CIN & gt;& gtstrInput

}

srand(time(NULL));

strResult = GetNum();

cout & lt& lt"请输入四位数(回车退出):"

CIN & gt;& gtstrInput

while (strInput!= "退出")

{

如果(!CheckInput(strInput))

{

cout & lt& lt“您的输入不正确,请输入4位数字,不能重复\ n”;

CIN & gt;& gtstrInput

继续;

}

if (strResult == strInput)

{

cout & lt& lt“哈!你猜对了,你真棒!号码是:“

cout & lt& lt“继续?(是/否)";

CIN & gt;& gtstrInput

如果(!(strInput[0]= = ' Y ' | | strInput[0]= = ' Y '))

{

打破;

}

strResult = GetNum();

iGuessTime = 1;

}

其他

{

if(MAX _ GUESS _ TIME & gt;iGuessTime)

{

cout & lt& lt“第一”

++ iGuessTime;

}

其他

{

cout & lt& lt“对不起,你猜错了。号码是:“< & ltstrResult & lt& ltendl

cout & lt& lt“继续?(是/否)";

CIN & gt;& gtstrInput

如果(!(strInput[0]= = ' Y ' | | strInput[0]= = ' Y '))

{

打破;

}

strResult = GetNum();

iGuessTime = 1;

}

}

cout & lt& lt"请输入四位数(回车退出):"

CIN & gt;& gtstrInput

}

cout & lt& lt“谢谢你使用它。再见。\ n ";

返回0;

}

字符串GetNum()

{

char cTmp[2]= { 0 };

字符串strTmp

int iTmp = 0;

while (strTmp.length()!= 4)

{

iTmp = rand()% 10;

itoa(iTmp,cTmp,10);

int iIndex = strtmp . find(cTmp);

if(iIndex & lt;0)

{

strTmp+= cTmp;

}

}

返回strTmp

}

字符串CalcResult(字符串strResult,字符串strInput)

{

int iA=0,iB = 0;

int i=0,j = 0;

char c result[5]= { 0 };

for(;我& ltstrresult . length();++i)

{

for(j = 0;j & ltstrinput . length();++j)

{

char strA = strResult[I];

char strB = strInput[j];

if (strA == strB)

{

如果(i == j)

{

++ iA;

}

其他

{

++ iB;

}

}

}

}

sprintf(cResult," %dA%dB ",iA,iB);

返回结果;

}

布尔校验输入(字符串strInput)

{

int I = 0;

if (strInput.length()!= 4)

{

返回false

}

for(;我& lt4;i++)

{

char cTmp = strInput[I];

if(cTmp & gt;9 ' | | cTmp & lt'0')

{

返回false

}

}

返回true

}

void ShowMenu()

{

cout & lt& lt"请输入相应的数字进行选择"

cout & lt& lt" 1->;玩游戏”

cout & lt& lt" 2->;游戏介绍”

cout & lt& lt" 0->;退出游戏”

}

void ShowGameInfo()

{

cout & lt& lt“这里是游戏介绍,输入自己的游戏介绍\ n”;

系统(“暂停”);

}