C++--常胜将军小游戏(图形版)

常胜将军

          现有21根火柴,两人轮流取,每人每次可以取走1至4根,不可多取,也不能不取,谁取最后一楰火柴谁输。请编写一个程序进行人机对弈,要求人先取,计算机后取;计算机一方为“常胜将军”。

代码

#include<iostream>
#include<stdlib.h>
#include<iomanip>   //包含setw
using namespace std;
 
void huochai(int a)
{
	int i;
	for(i=0;i<a;i++)
	{	if(i%5==0)
			cout<<endl;
	cout<<"   ------>>     ";}
}
int main()
{
	int num=21;
	int n;
	do{
		system("cls");
		if(num==1)
		{cout<<"最后一根火柴了! 你只能选择  你输了!!"<<endl;	break;}
		if(num==0)
		{cout<<"你输了!!!!"<<endl; break;}
	//cout<<"******************************************************************"<<endl;
    cout<<"                                  常胜将军                                       "<<endl;
	cout<<"                                                                 "<<endl;

	cout<<"        火柴数剩余数: "<<num<<endl;
	huochai(num);
	cout<<"                                                                 "<<endl;
	cout<<"                                                                 "<<endl;
	cout<<"                                                                 "<<endl;
	cout<<"                                                                 "<<endl;
	cout<<"                                                                 "<<endl;
	cout<<"                                                                 "<<endl;
	cout<<"                                                                 "<<endl;
	

	cout<<"                                            请输入你选择的火柴数(1--4): ";

	cin>>n;
	while(1)
		{
			if(n>=1&&n<=4)
				break;
			cout<<"                                            输入错误!请重新输入(1--4): ";
			cin>>n;
		}
		
	num=num-n;
	cout<<"                                            电脑选择的火柴数是:           "<<(5-n)<<endl;
	num=num-(5-n);
	system("pause");

	}while(n);

//	cout<<"******************************************************************"<<endl;
	//huochai(21);

	return 0;
}


程序运行界面

在这里插入图片描述

发布了155 篇原创文章 · 获赞 110 · 访问量 5万+

猜你喜欢

转载自blog.csdn.net/weixin_44225182/article/details/103625324