首页 > 其他分享 >闪亮登场1.1版

闪亮登场1.1版

时间:2022-12-23 11:56:47浏览次数:43  
标签:1.1 int 登场 电脑 wj 玩家 闪亮 pos cout

#include<iostream>
#include<cstdlib>
#include<cstdio>
#include<ctime>
#include<windows.h>
#include<cstring>
using namespace std;
int chance_wj=0,chance_dn=0;//分别代表玩家机会和电脑机会,1有0无 
bool game=1;//代表游戏状态,1真0假,状态为真时可正常运行 
int wjsl=0,dnsl=0;//分别代表玩家闪亮(登场)、电脑闪亮(登场) 1真0假 
int dnnj=1,dnmy=1,wjnj=1,wjmy=1;//分别代表电脑脑浆、电脑门牙、玩家脑浆、玩家门牙  1有0无 
int wjqj=1,dnqj=1;//分别代表玩家抢救和电脑抢救状态 1有效0无效 
int pos_wj=0,pos_dn=1;//0代表玩家的家,1代表电脑的家,2代表医院,3代表火化场 
string success;//判断获胜方 
inline void initial()
{
	chance_wj=0,chance_dn=0;
	game=1;
	wjsl=0,dnsl=0;
	dnnj=1,dnmy=1,wjnj=1,wjmy=1;
	wjqj=1,dnqj=1;
	pos_wj=0,pos_dn=1;
	string success;
}
inline int random()//随机数函数 
{
    srand((unsigned)time(NULL));
    int res=rand()%3+1;
    return res;
}
inline void printstate(int a,int b,int c,int d,int e,int f,int g,int h,int i,int j) //分别代表玩家闪亮a、电脑闪亮b、电脑脑浆c、电脑门牙d、玩家脑浆e、玩家门牙f、玩家抢救g、电脑抢救h、玩家位置i、电脑位置j 
{
	cout<<"此时的情形如下:"<<endl;
	if(a==1) 
	{
		Sleep(100);
		cout<<"玩家已闪亮登场,"; 
	}
	else
	{
		Sleep(100);
		cout<<"玩家未闪亮登场,";
	}
	if(e==1)
	{
		Sleep(100);
		cout<<"玩家脑浆还在,";
	}
	else
	{
		Sleep(100);
		cout<<"玩家脑浆已没,";
	}
	if(f==1)
	{
		Sleep(100);
		cout<<"门牙还在,"; 
	}
	else
	{
		Sleep(100);
		cout<<"门牙已没,";
	}
	if(g==1)
	{
		Sleep(100);
		cout<<"抢救有效,";
	}
	else
	{
		Sleep(100);
		cout<<"抢救无效,";
	}
	Sleep(100);
	cout<<"位置在";
	switch(i) 
	{
		case 0: cout<<"玩家家";break;
		case 1: cout<<"电脑家";break;
		case 2: cout<<"医院";break;
		case 3: cout<<"火化场";break;
		default: cout<<"位置显示错误!"; 
	}
	cout<<endl; 
	if(b==1) 
	{
		Sleep(100);
		cout<<"电脑已闪亮登场,"; 
	}
	else
	{
		Sleep(100);
		cout<<"电脑未闪亮登场,";
	}
	if(c==1)
	{
		Sleep(100);
		cout<<"电脑脑浆还在,";
	}
	else
	{
		Sleep(100);
		cout<<"玩家脑浆已没,";
	}
	if(d==1)
	{
		Sleep(100);
		cout<<"门牙还在,"; 
	}
	else
	{
		Sleep(100);
		cout<<"门牙已没,";
	}
	if(h==1)
	{
		Sleep(100);
		cout<<"抢救有效,";
	}
	else
	{
		Sleep(100);
		cout<<"抢救无效,";
	}
	Sleep(100);
	cout<<"位置在";
	switch(j) 
	{
		case 0: cout<<"玩家家";break; 
		case 1: cout<<"电脑家";break;
		case 2: cout<<"医院";break;
		case 3: cout<<"火化场";break;
		default: cout<<"位置显示错误!"; 
	}
	cout<<endl; 
	return; 
} 
inline void caiquan()//猜拳函数 
{
	Sleep(1500);
	system("cls");
	SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_INTENSITY | FOREGROUND_RED |
		FOREGROUND_BLUE);
	printstate(wjsl,dnsl,dnnj,dnmy,wjnj,wjmy,wjqj,dnqj,pos_wj,pos_dn);
	SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_INTENSITY | FOREGROUND_BLUE);
    cout<<"[系统提示]石头剪子布:1代表石头,2代表剪子,3代表布"<<endl; 
    for( ; ; )
    {
        int wj;
        cin>>wj;
        int dn=random();
        if(wj==1 and dn==1)
        {
        	Sleep(500);
            cout<<"[系统提示]玩家和电脑均出石头,平局,继续";
        }
        if(wj==2 and dn==2)
        {
        	Sleep(500);
            cout<<"[系统提示]玩家和电脑均出剪子,平局,继续";
        }
        if(wj==3 and dn==3)
        {
        	Sleep(500);
            cout<<"[系统提示]玩家和电脑均出布,平局,继续";
        }
        if(wj==1 and dn==2)
        {
        	Sleep(500);
            cout<<"[系统提示]玩家出石头,电脑出剪子,玩家赢"<<endl; 
            cout<<"[系统提示]玩家获得一次行动机会,请行动"<<endl;
            chance_wj++;
        }   
        if(wj==2 and dn==3)
        {
        	Sleep(500);
            cout<<"[系统提示]玩家出剪子,电脑出布,玩家赢"<<endl; 
            cout<<"[系统提示]玩家获得一次行动机会,请行动"<<endl;
            chance_wj++;
        }
        if(wj==3 and dn==1)
        {
        	Sleep(500);
            cout<<"[系统提示]玩家出布,电脑出石头,玩家赢"<<endl; 
            cout<<"[系统提示]玩家获得一次行动机会,请行动"<<endl;
            chance_wj++;
        }
        if(wj==1 and dn==3)
        {
        	Sleep(500);
            cout<<"[系统提示]玩家出石头,电脑出布,电脑赢"<<endl; 
            cout<<"[系统提示]电脑获得一次行动机会"<<endl;
            chance_dn++;
        }
        if(wj==2 and dn==1)
        {
        	Sleep(500);
            cout<<"[系统提示]玩家出剪子,电脑出石头,电脑赢"<<endl; 
            cout<<"[系统提示]电脑获得一次行动机会"<<endl;
            chance_dn++;
        }
        if(wj==3 and dn==2)
        {
        	Sleep(500);
            cout<<"[系统提示]玩家出布,电脑出剪子,电脑赢"<<endl; 
            cout<<"[系统提示]电脑获得一次行动机会"<<endl;
            chance_dn++;
        }
        if(wj!=1 and wj!=2 and wj!=3)
        {
        	Sleep(500);
        	cout<<"输入无效,请重新输入。"<<endl;
		}
        putchar('\n');
        if(wj!=dn) break;
    }
}
int main()
{
	START:
	system("cls"); 
	initial();
	SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_INTENSITY | FOREGROUND_BLUE);
	Sleep(500);
    cout<<"[系统提示]准备好了吗?游戏还有5秒即将开始!";
    Sleep(1000);
    putchar('\n');
    system("cls");
    cout<<5<<endl;
	Sleep(999);
	system("cls");
	cout<<4<<endl;
	Sleep(999);
	system("cls");
	cout<<3<<endl;
	Sleep(999);
	system("cls");
	cout<<2<<endl;
	Sleep(999);
	system("cls");
	cout<<1<<endl;
	Sleep(999); 
	system("cls");
    SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_INTENSITY | FOREGROUND_GREEN);
    while(game==1)
    {
    	SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_INTENSITY | FOREGROUND_BLUE);
        caiquan();
        if(chance_wj==1)
        {
        	SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_INTENSITY | FOREGROUND_GREEN);
        	Sleep(500);
            cout<<"[系统提示]请行动:1代表闪亮登场,2代表去找人,3代表要进攻,4代表要送人,5代表要踢人,6代表要火化,7代表要前往某地"<<endl;
            int wj1;
            cin>>wj1;
            if(wj1==1)
            {
                if(wjsl==0) 
                {
                	Sleep(500);
                    cout<<"我:闪亮登场"<<endl;
                    wjsl=1;
                }
                else cout<<"[系统提示]你已经闪亮登场了,憋"<<endl; 
            } 
            else if(wj1==2 or wj1==3 or wj1==4 or wj1==5 or wj1==6 or wj1==7) 
            {
                if(wjsl==0) cout<<"[系统提示]你还没有闪亮登场,憋"<<endl;
                else
                {
                    if(wj1==2) 
                    {
                        if(pos_wj==pos_dn) cout<<"[系统提示]你和电脑已经在一起了,憋"<<endl;
                        else 
                        {
                        	Sleep(500);
                            cout<<"我:找到你"<<endl; 
                            pos_wj=pos_dn;
                        }
                    }
                    if(wj1==3)
                    {
                        if(pos_wj!=pos_dn) cout<<"[系统提示]你和电脑不在一起,憋"<<endl;
                        else
                        {
                        	Sleep(500);
                            cout<<"[系统提示]请选择你要进攻的方式:1代表打出脑浆,2代表打掉门牙,3代表抢救无效"<<endl;
                            int wj2;
                            cin>>wj2;
                            if(wj2==1)
                            {
                                if(dnnj==0) cout<<"[系统提示]电脑已经没有脑浆了,憋"<<endl;
                                else 
                                {
                                	Sleep(500);
                                    cout<<"我:打出脑浆"<<endl; 
                                    dnnj=0;
                                }
                            }
                            else if(wj2==2)
                            {
                                if(dnnj==1) cout<<"[系统提示]电脑脑浆还有,憋" <<endl;
                                else
                                {
                                    if(dnmy==0) cout<<"[系统提示]电脑已经没有门牙了,憋"<<endl;
                                    else 
                                    {
                                    	Sleep(500);
                                        cout<<"我:打掉门牙"<<endl;
                                        dnmy=0;
                                    }
                                }
                            }
                            else if(wj2==3)
                            {
                                if(!(pos_wj==2 and pos_dn==2)) cout<<"[系统提示]你和电脑不同时在医院,憋"<<endl;
                                else
                                {
                                    if(dnnj==1) cout<<"[系统提示]电脑脑浆还有,憋"<<endl;
                                    else
                                    {
                                        if(dnmy==1) cout<<"[系统提示]电脑门牙还有,憋"<<endl;
                                        else
                                        {
                                            if(dnqj==0) cout<<"[系统提示]电脑已经被抢救无效了,憋"<<endl;
                                            else 
                                            {
                                            	Sleep(500);
                                                cout<<"我:抢救无效"<<endl; 
                                                dnqj=0;
                                            }
                                        }
                                    }   
                                }
                            }
                            else cout<<"[系统提示]没有该选项,憋";
                        }
                    }
                    if(wj1==4)
                    {
                        if(pos_wj!=pos_dn) cout<<"[系统提示]你和电脑不在一起,憋"<<endl;
                        else
                        {
                        	Sleep(500);
                            cout<<"[系统提示]请选择你要送的目的地:0玩家家,1代表电脑家,2代表医院,3代表火化场"<<endl;
                            int wj3;
                            cin>>wj3;
                            if(wj3==0)
                            {
                                if(pos_wj==0) cout<<"[系统提示]你和电脑已经在玩家家了,憋"<<endl;
                                else 
                                {
                                	Sleep(500);
                                    cout<<"我:送回我家"<<endl; 
                                    pos_wj=0;
                                    pos_dn=0;
                                }
                            }
                            else if(wj3==1)
                            {
                                if(pos_wj==1) cout<<"[系统提示]你和电脑已经在电脑家了,憋"<<endl;
                                else 
                                {
                                	Sleep(500);
                                    cout<<"我:送到你家"<<endl;
                                    pos_wj=1;
                                    pos_dn=1;
                                }
                            }
                            else if(wj3==2)
                            {
                                if(pos_wj==2) cout<<"[系统提示]你和电脑已经在医院了,憋"<<endl;
                                else 
                                {
                                	Sleep(500);
                                    cout<<"我:送进医院"<<endl;
                                    pos_wj=2;
                                    pos_dn=2;
                                }   
                            } 
                            else if(wj3==3)
                            {
                                if(pos_wj==3) cout<<"[系统提示]你和电脑已经在火化场了,憋"<<endl;
                                else 
                                {
                                	Sleep(500);
                                    cout<<"我:送进火化场"<<endl;
                                    pos_wj=3;
                                    pos_dn=3;
                                }
                            }
                            else cout<<"[系统提示]没有该选项,憋"<<endl;
                        }
                    }
                    if(wj1==5)
                    {
                        if(pos_wj!=pos_dn) cout<<"[系统提示]你和电脑不在一起,憋";
                        else
                        {
                        	Sleep(500);
                            cout<<"[系统提示]请选择你要踢的目的地:0玩家家,1代表电脑家,2代表医院,3代表火化场"<<endl;
                            int wj4;
                            cin>>wj4;
                            if(wj4==0)
                            {
                                if(pos_wj==0) cout<<"[系统提示]你和电脑已经在玩家家了,憋"<<endl;
                                else 
                                {
                                	Sleep(500);
                                    cout<<"我:踢到我家"<<endl;
                                    pos_dn=0;
                                }
                            }
                            else if(wj4==1)
                            {
                                if(pos_wj==1) cout<<"[系统提示]你和电脑已经在电脑家了,憋"<<endl;
                                else 
                                {
                                	Sleep(500);
                                    cout<<"我:踢回你家"<<endl;
                                    pos_dn=1; 
                                }
                            }
                            else if(wj4==2)
                            {
                                if(pos_wj==2) cout<<"[系统提示]你和电脑已经在医院了,憋"<<endl;
                                else 
                                {
                                	Sleep(500);
                                    cout<<"我:踢进医院"<<endl;   
                                    pos_dn=2;
                                }
                            } 
                            else if(wj4==3)
                            {
                                if(pos_wj==3) cout<<"[系统提示]你和电脑已经在火化场了,憋"<<endl;
                                else 
                                {
                                	Sleep(500);
                                    cout<<"我:踢进火化场"<<endl;
                                    pos_dn=3;
                                }
                            }
                            else cout<<"[系统提示]没有该选项,憋"<<endl;
                        }
                    }
                    if(wj1==6)
                    {
                        if(!(pos_wj==3 and pos_dn==3)) cout<<"[系统提示]你和电脑不同时在火化场,憋"<<endl;
                        else
                        {
                            if(!(dnnj==0)) cout<<"[系统提示]电脑脑浆还有,憋"<<endl;
                            else
                            {
                                if(!(dnmy==0)) cout<<"[系统提示]电脑门牙还有,憋"<<endl;
                                else
                                {
                                    if(!(dnqj==0)) cout<<"[系统提示]电脑抢救还有效,憋"<<endl;
                                    else 
                                    {
                                    	Sleep(500);
                                        cout<<"我:火化"<<endl;
                                        success="wj";
                                        game=0; 
                                        break;
                                    }
                                }
                            }
                        }
                    }
                    if(wj1==7)
                    {
                        cout<<"[系统提示]请选择你要前往的目的地:0玩家家,1代表电脑家,2代表医院,3代表火化场"<<endl;
                        int wj5;
                        cin>>wj5;
                        if(wj5==0)
                        {
                            if(pos_wj==0) cout<<"[系统提示]你已经在玩家家了,憋"<<endl;
                            else 
                            {
                            	Sleep(500);
                                cout<<"我:回到我家"<<endl;
                                pos_wj=0;
                            } 
                        } 
                        else if(wj5==1)
                        {
                            if(pos_wj==1) cout<<"[系统提示]你已经在电脑家了,憋"<<endl;
                            else 
                            {
                            	Sleep(500);
                                cout<<"我:冲进你家"<<endl;
                                pos_wj=1;
                            } 
                        } 
                        else if(wj5==2)
                        {
                            if(pos_wj==2) cout<<"[系统提示]你已经在医院了,憋"<<endl;
                            else 
                            {
                            	Sleep(500);
                                cout<<"我:去医院"<<endl;
                                pos_wj=2;
                            } 
                        } 
                        else if(wj5==3)
                        {
                            if(pos_wj==3) cout<<"[系统提示]你已经在火化场了,憋"<<endl;
                            else 
                            {
                            	Sleep(500);
                                cout<<"我:去火化场"<<endl;
                                pos_wj=3;
                            } 
                        } 
                        else cout<<"[系统提示]没有该选项,憋"<<endl;
                    }
                } 
            }
            else cout<<"[系统提示]没有该选项,憋"<<endl; 
        }
        SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_INTENSITY | FOREGROUND_RED);
        if(chance_dn==1)
        {
            if(dnsl==0) 
            {
            	Sleep(500);
                cout<<"电脑:闪亮登场"<<endl;
                dnsl=1; 
            }
            else
            {
                if(pos_dn==3 and pos_wj==3 and wjqj==0) 
                {
                	Sleep(500);
                    cout<<"电脑:火化"<<endl;
                    success="dn";
                    game=0; 
                    break;
                }
                if(pos_dn!=pos_wj) 
                {
                	Sleep(500);
                    cout<<"电脑:找到你"<<endl;
                    pos_dn=pos_wj;
                }
                else
                {
                    if(wjnj==1) 
                    {
                    	Sleep(500);
                        cout<<"电脑:打出脑浆"<<endl;
                        wjnj=0;
                    }
                    else
                    {
                        if(wjmy==1) 
                        {
                        	Sleep(500);
                            cout<<"电脑:打掉门牙"<<endl;
                            wjmy=0;
                        }
                        else
                        {
                            if(wjqj==0) 
                            {
                            	Sleep(500);
                                cout<<"电脑:送进火化场"<<endl;
                                pos_wj=3;
                                pos_dn=3;
                            }
                            if(wjqj==1)
                            {
                                if(pos_dn!=2) 
                                {
                                	Sleep(500);
                                    cout<<"电脑:送进医院"<<endl;
                                    pos_dn=2;
                                    pos_wj=2;
                                }
                                else 
                                {
                                	Sleep(500);
                                    cout<<"电脑:抢救无效"<<endl; 
                                    wjqj=0; 
                                }
                            }
                        }
                    } 
                }
            }
        }
        chance_wj=0,chance_dn=0;
    }
    SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_INTENSITY | FOREGROUND_RED |
		FOREGROUND_GREEN);
    putchar('\n');
    Sleep(1000);
    cout<<"游戏结束了!  ";
    if(success=="wj") cout<<"玩家获胜!"<<endl;
    else if(success=="dn") cout<<"电脑获胜!"<<endl; 
    ASK:
    printf("下一局游戏吗?0代表否,1代表是\n"); 
    int p;
	scanf("%d",&p); 
    if(p==0) return 0;
	else if(p==1) goto START;
	else 
	{
		Sleep(200);
		printf("输入无效,请重新输入。\n");
		goto ASK;
	} 
    return 0;
}

上述为闪亮登场升级版代码,欢迎大家复制到自己的本地编译器与电脑大战!我胜率不到20%...

标签:1.1,int,登场,电脑,wj,玩家,闪亮,pos,cout
From: https://www.cnblogs.com/lngym/p/17000375.html

相关文章

  • openssl-1.1.1n安装
    查看openssl.cnf位置find/etc/-nameopenssl.cnf-printf"%h\n"/etc/pki/tls编译安装openssl-1.1.1n​​curl-Ohttp://artfiles.org/openssl.org/source/openssl-1.1.1......
  • 使用kubeadm安装k8s集群(v1.18.0)
    一、安装环境系统[root@master1~]#cat/etc/redhat-releaseCentOSLinuxrelease7.9.2009(Core)[root@master1~]#uname-aLinuxmaster13.10.0-1160.el7.x86_64#1......
  • ajax的statusText在http1.1和http2中的不同
    问题在服务端支持协议从http1.1升级到http2的时候,项目中正常的请求流程出现了错误,经排查是ajax封装代码使用xmlHttpRequest的statusText属性判断是否正常返回,进而导致错误......
  • 14.1.1 Benefits of Using InnoDB Tables
    TheInnoDBStorageEngineIntroductiontoInnoDB14.1.1 BenefitsofUsingInnoDBTables14.1.2InnoDB表的最佳实践InnoDB tableshavethefollowingbene......
  • 用 Java?试试国产框架 Solon v1.11.5(带视频)
    一个更现代感的Java应用开发框架:更快、更小、更自由。没有Spring,没有Servlet,没有JavaEE;独立的轻量生态。主框架仅0.1MB。@ControllerpublicclassApp{publ......
  • 荣耀9X降级至9.1.1.120详细教程
    此教程借鉴酷安@你现在好像可以凑成三连是南辞呀mua转载https://a9647.lanzous.com/ieFIRhqwzdi链接打不开?请用↓https://nancimua.lanzouw.com/isbpd0haf16f注意:Win......
  • ubuntu 11.10(32位系统)下编译android源码 make错误解决办法
    本文介绍在ubuntu11.10系统下编译android2.3.3源码,编译之前请确定上两篇文章中所需的准备工作已经成功完成。编译完成生成系统镜像文件,并在模拟器中运行。准备工作完成......
  • PCL1.12+VTK9.1+QT6编译部署
     本文讲解使用的环境是vs2019+pcl1.12.0+vtk9.1+qt6.0,最后再展示一个示例程序1 编译VTK   vtk下载地址如下:https://vtk.org/download/然后用cmake构建,修改一下几个地......
  • OAuthApp v1.12.15 更新 | 前端发布工具
    OAuthApp是一个前端发布工具,用于快速开发前端网页项目,并发布到服务器。具有引入脚本库就能使用服务端API在线发布H5,数据独立存储的特性更新内容:1,新增角色/权限管理......
  • 致命错误:没有用于主机"192.168.1.112",用户"postgres"
      安装postgresql9.2后,QT连接数据库:QSqlDatabasedb=QSqlDatabase::addDatabase("QPSQL","test");db.setDatabaseName("sqlscada");//db.setHostName("127.0.0.1");d......