自制小游戏,猜字母。

 近日闲来无事,做了一个猜字母的小游戏。原型是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");
		}
	}
	
		
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值