近日闲来无事,做了一个猜字母的小游戏。原型是switch平台的《51GAME》,如有问题,希望可以指出谢谢。
#include<iostream>
#include<conio.h>
#include<ctime>
#include<string>
using namespace std;
void s1();
void s2();
void s3();
void s4();
void startw();
void endd();
void pllay();
char zhu[4];
void endd()
{
system("cls");
system("color 02");
cout << endl <<endl<< "**********************************" << endl << "感谢宁的游玩!! 作者:2024级软工1班蒋礼泽" << endl << "**********************************"<<endl<<endl;
system("pause");
}
void startw()
{
int a;
cout << "您好,欢迎游玩猜字母小游戏。" << endl;
system("pause");
system("cls");
cout << "在游玩之前,还请您仔细阅读游戏说明。" << endl;
system("pause");
system("cls");
for (int i = 1; i < 2;)
{
cout << "顾名思义,这个游戏是一个猜字母的游戏,接下来我会准备4个字母(从a,b,c,d,e,f当中选出),它们会按照固定的顺序排列。" << endl;
system("pause");
system("cls");
cout << "而您只需要按顺序输入4个字母就可以了。" << endl;
system("pause");
system("cls");
cout << "在您输入完之后,我会告诉您关于您的答案与准确答案的关系,例如:" << endl << "正确答案:abcd" << endl << "您的答案:abde" << endl << "那么我会告诉您:2个全对,1个半对。" << endl;
system("pause");
system("cls");
cout << "听明白了吗?" << endl << "输入1----明白了。" << endl;
a = _getch();
if (a == 49)
{
cout << "好的,那我们开始吧。" << endl;
system("pause");
system("cls");
i = 9;
}
else
{
cout << "行,那咱们再来一遍" << endl;
system("pause");
system("cls");
}
}
}
int main()
{
startw();
srand((unsigned)time(NULL));
s1(); s2(); s3(); s4();
pllay();
endd();
return 0;
}
void s1()
{
int a = rand() % 6;
if (a == 1)
{
zhu[0] = 'a';
}
else if (a == 1)
{
zhu[0] = 'b';
}
else if (a == 2)
{
zhu[0] = 'c';
}
else if (a == 3)
{
zhu[0] = 'd';
}
else if (a == 4)
{
zhu[0] = 'e';
}
else if (a == 5)
{
zhu[0] = 'f';
}
}
void s2()
{
for (int i = 9; i > 8;)
{
int a = rand() % 6;
if (a == 0)
{
zhu[1] = 'a';
}
else if (a == 1)
{
zhu[1] = 'b';
}
else if (a == 2)
{
zhu[1] = 'c';
}
else if (a == 3)
{
zhu[1] = 'd';
}
else if (a == 4)
{
zhu[1] = 'e';
}
else if (a == 5)
{
zhu[1] = 'f';
}
if (zhu[1] != zhu[0])
{
i = 0;
}
}
}
void s3()
{
for (int i = 9; i > 8;)
{
int a = rand() % 6;
if (a == 0)
{
zhu[2] = 'a';
}
else if (a == 1)
{
zhu[2] = 'b';
}
else if (a == 2)
{
zhu[2] = 'c';
}
else if (a == 3)
{
zhu[2] = 'd';
}
else if (a == 4)
{
zhu[2] = 'e';
}
else if (a == 5)
{
zhu[2] = 'f';
}
if (zhu[2] != zhu[0] && zhu[2] != zhu[1])
{
i = 0;
}
}
}
void s4()
{
for (int i = 9; i > 8;)
{
int a = rand() % 6;
if (a == 0)
{
zhu[3] = 'a';
}
else if (a == 1)
{
zhu[3] = 'b';
}
else if (a == 2)
{
zhu[3] = 'c';
}
else if (a == 3)
{
zhu[3] = 'd';
}
else if (a == 4)
{
zhu[3] = 'e';
}
else if (a == 5)
{
zhu[3] = 'f';
}
if (zhu[3] != zhu[2] && zhu[3] != zhu[1] && zhu[3] != zhu[0])
{
i = 0;
}
}
}
void pllay()
{
int bd = 0;
int qd = 0;
string s1, s2, s3, s4, d1, d2, d3, d4, d5,wr;
s1 = "0个全对,"; s2 = "1个全对,"; s3 = "2个全对,"; s4 = "3个全对,";
d1 = "0个半对。"; d2 = "1个半对。"; d3 = "2个半对。"; d4 = "3个半对。"; d5 = "4个半对。";
wr = "再来一次吧。";
char wan[4];
cout << "我的字母已经出好了,";
for (int i = 1; i > 0;i++)
{
bd = 0;
qd = 0;
cout << "请输入您的答案:" << endl << "第一个字母(a~f):";
cin >> wan[0];
if (wan[0] == zhu[0])
{
qd++;
}
else if (wan[0] != zhu[0] && wan[0] == zhu[1])
{
bd++;
}
else if (wan[0] != zhu[0] && wan[0] == zhu[2])
{
bd++;
}
else if (wan[0] != zhu[0] && wan[0] == zhu[3])
{
bd++;
}
else if (wan[0] == 'p')
{
cout <<endl<< zhu << endl;
}
else
{
;
}
cout << endl << "第二个字母(a~f):";
cin >> wan[1];
if (wan[1] == zhu[1])
{
qd++;
}
else if (wan[1] != zhu[1] && wan[1] == zhu[0])
{
bd++;
}
else if (wan[1] != zhu[1] && wan[1] == zhu[2])
{
bd++;
}
else if (wan[1] != zhu[1] && wan[1] == zhu[3])
{
bd++;
}
else
{
;
}
cout << endl << "第三个字母(a~f):";
cin >> wan[2];
if (wan[2] == zhu[2])
{
qd++;
}
else if (wan[2] != zhu[2] && wan[2] == zhu[1])
{
bd++;
}
else if (wan[2] != zhu[2] && wan[2] == zhu[0])
{
bd++;
}
else if (wan[2] != zhu[2] && wan[2] == zhu[3])
{
bd++;
}
else
{
;
}
cout << endl << "第四个字母(a~f):";
cin >> wan[3];
if (wan[3] == zhu[3])
{
qd++;
}
else if (wan[3] != zhu[3] && wan[3] == zhu[1])
{
bd++;
}
else if (wan[3] != zhu[3] && wan[3] == zhu[2])
{
bd++;
}
else if (wan[3] != zhu[3] && wan[3] == zhu[0])
{
bd++;
}
else
{
;
}
if (qd == 4)
{
cout << "恭喜您,您只用了" << i << "次就猜出了正确答案!";
system("pause");
system("cls");
i = -9;
}
else if (qd == 0 && bd == 0)
{
cout << s1 << d1 << endl << wr;
system("pause");
system("cls");
}
else if (qd == 0 && bd == 1)
{
cout << s1 << d2 << endl << wr;
system("pause");
system("cls");
}
else if (qd == 0 && bd == 2)
{
cout << s1 << d3 << endl << wr;
system("pause");
system("cls");
}
else if (qd == 0 && bd == 3)
{
cout << s1 << d4 << endl << wr;
system("pause");
system("cls");
}
else if (qd == 0 && bd == 4)
{
cout << s1 << d5 << endl << wr;
system("pause");
system("cls");
}
else if (qd == 1 && bd == 0)
{
cout << s2 << d1 << endl << wr;
system("pause");
system("cls");
}
else if (qd == 1 && bd == 1)
{
cout << s2 << d2 << endl << wr;
system("pause");
system("cls");
}
else if (qd == 1 && bd == 2)
{
cout << s2 << d3 << endl << wr;
system("pause");
system("cls");
}
else if (qd == 1 && bd == 3)
{
cout << s2 << d4 << endl << wr;
system("pause");
system("cls");
}
else if (qd == 1 && bd == 4)
{
cout << s2 << d5 << endl << wr;
system("pause");
system("cls");
}
else if (qd == 2 && bd == 0)
{
cout << s3 << d1 << endl << wr;
system("pause");
system("cls");
}
else if (qd == 2 && bd == 1)
{
cout << s3 << d2 << endl << wr;
system("pause");
system("cls");
}
else if (qd == 2 && bd == 2)
{
cout << s3 << d3 << endl << wr;
system("pause");
system("cls");
}
else if (qd == 2 && bd == 3)
{
cout << s3 << d4 << endl << wr;
system("pause");
system("cls");
}
else if (qd == 2 && bd == 4)
{
cout << s3 << d5 << endl << wr;
system("pause");
system("cls");
}
else if (qd == 3 && bd == 0)
{
cout << s4 << d1 << endl << wr;
system("pause");
system("cls");
}
else if (qd == 3 && bd == 1)
{
cout << s4 << d2 << endl << wr;
system("pause");
system("cls");
}
else if (qd == 3 && bd == 2)
{
cout << s4 << d3 << endl << wr;
system("pause");
system("cls");
}
else if (qd == 3 && bd == 3)
{
cout << s4 << d4 << endl << wr;
system("pause");
system("cls");
}
else if (qd == 3 && bd == 4)
{
cout << s4 << d5 << endl << wr;
system("pause");
system("cls");
}
else
{
cout << "wrong!!!" << endl;
system("pause");
system("cls");
}
}
}