机房小游戏

众所周知,在机房里是不能玩游戏的,但某些人仍然胆大包天,想在老师们的火眼金睛下偷偷地“爽”一把,这里我就用我以往的经验给大家推荐一些小游戏。

qwq

  • 网页小游戏
    • slay.one
    • 名字大作战
    • A Dark Room
    • 一些乱七八糟的小游戏
    • 丛林大作战
  • C++小游戏
    • 猜数字:
    • 冒险小游戏:
    • 俄罗斯方块:
    • 买彩票
    • 三国杀
    • 扫雷

网页小游戏

这些是作者收录的一些有趣的网页小游戏,可以用来打发无聊的信息学生活。

slay.one

这款游戏,许多OIer都非常地熟悉,是一款2D的枪战小游戏,正版在steam上面有,可是贵的出奇,对于我们这种穷人,只能在网页上玩玩盗版了。
网址

名字大作战

这款游戏,真的好像不算游戏,我也不再介绍了。
网址

A Dark Room

网址

一些乱七八糟的小游戏

黑客
不知道名字
2048game
贪吃蛇

丛林大作战

网址
这是一款类似于球球大作战的小游戏,比较有趣,但有些卡,不是特别推荐,但也可以试一试。

C++小游戏

这是作者收录的一些C++编的小游戏,值得一玩。

猜数字:


	#include 
	#include 
	#include 
	using namespace std;
	int main() {
		cout << "我这里有一个数,现在请你猜猜它"<<endl;
		srand(time(NULL));
	    int x = rand() % 50;
	    for (int i =1;i <= 7;i++){
	        int y;
	        cin >> y;
	        if (y<x) {
	            cout << "不好意思,你猜小了" << endl;
	         }else if (y>x) {
	            cout << "对不起,你猜大了" <<endl;
	        }else {
	            cout << "恭喜恭喜,猜对了!!!" << endl;
	            return 0;
	        }
	    }
	    cout << "你的次数用完了,你失败了"<<endl<<"那个数是"<<x;
	    return 0;
	}

冒险小游戏:

#include
	#include
	#include //suiji 
	#include
	#include //SLEEP函数
	struct Player //玩家结构体,并初始化player
	{
	    char name[21];
	    int attack;
	    int defense;
	    int health;
	    long int max_health;
	    int level;
	    int exp;
	    int range_exp;
	    long int max_exp;
	} player= {"勇者",50,40,100,100,1,0,0,100};
	struct Enemy //怪的结构体,并初始化各种怪
	{
	    char name[20];
	    char wupin[12];
	    int attack;
	    int defense;
	    int health;
	    int money;
	    long int exp;
	    int wupin_sign;
	    int wupinpro;
	    int double_attack;
	    int miss;
	} strongman= {"森林巨人","黄金圣衣",40,50,350,200,100,1,2,1,0},
	  witch= {"森林女巫","银甲",25,15,100,50,50,2,2,1,1},
	  xiyi= {"森林蜥蜴","铁甲",18,10,50,30,35,3,3,2,2},
	  big_strongman= {"森林巨人王","巨人之臂",40*5,50*5,350*5,200*5,100*5,4,4,2,0},
	  lion= {"草原雄狮","绝世好剑",60,30,280,200,100,5,2,1,0},
	  horse= {"草原野马","碧血剑",28,12,90,50,50,6,2,1,1},
	  bee= {"草原黄蜂","长剑",17,11,60,30,35,7,3,2,2},
	  shitu= {"使徒","\0",60*8,30*8,280*8,200*8,100*8,9,1,1,0},
	  guai= {"\0","\0",0,0,0,0,0,0,0,0,0};
	struct Place
	{
	    int bar,hotel,forest1,forest2,forest3,grass1,grass2,grass3;
	} place= {1,2,3,4,5,6,7,8};
	int max_exp=0;
	int choose_number=0,s=0,strongman_arm=0,battle=0,money=500,place_sign=9;
	int cao=3,jijiubao=2,baiyao=2,superbaiyao=1,boom=3,dubiao=2,atom_boom=1;
	int fang=0,fang1=10,fang1n=0,fang2=20,fang2n=0,fang3=40,fang3n=0,fang4=100,fang4n=0;
	int gong=0,gong1=8,gong1n=0,gong2=15,gong2n=0,gong3=25,gong3n=0,gong4=60,gong4n=0;
	char gongname[20]="无",fangname[20]="无";
	char proof;
	void AddWupin(int);
	int AttackResult();
	void BattleAct();
	void ChooseWupin();
	void DisplayState();
	void OrdinaryAct();
	int SuiJi();
	int SuiJi100();
	void WhetherLevelUp();
	void SlowDisplay(char *);
	int main()
	{
	    int i=0,j=0,k=0;
	    char player_name[21];
	    SlowDisplay("这是一个勇者的世界! 雅莉萨斯国的XXX公主被陌生人绑架了!\n\n 伟大的勇者啊~拿起你们的武器,营救XXX公主!\n\n\n输入你的名字: (20个字符)\n\n\n");
	// sndPlaySound("res\\F005.wav",SND_LOOP);
	    scanf("%s",player_name);
	    strncpy(player.name,player_name,20);
	    if(strcmp(player.name,"PQH")==0)
	    {
	        SlowDisplay("封印多年的 PQH 啊!你终于可以重见天日了!\n\n\n PQH 重新启动... 随即... 暴走!!!\n\n\n");
	        player.attack=999;
	        player.defense=999;
	        player.health=9999;
	        player.max_health=9999;
	    }
	    getchar();
	    OrdinaryAct();
	    return 0;
	}
	int SuiJi()
	{
	    srand((unsigned)time(NULL));
	    return rand()%10;
	}
	int SuiJi100()
	{
	    srand((unsigned)time(NULL));
	    return rand()%100;
	}
	void ChooseWupin() //选择物品 并使用
	{
	    printf("物品: 1,止血草%d个 2,急救包%d个 3,云南白药%d个 4,超级云南白药%d个 5,手雷%d个 6,毒标%d个 7,手抛式原子弹%d个 0,返回\n\n\n",cao,jijiubao,baiyao,superbaiyao,boom,dubiao,atom_boom);
	    switch(scanf("%d",&choose_number),choose_number)
	    {
	        case 1:
	            if(cao>0)
	            {
	                SlowDisplay("使用止血草,HP增加60\n\n\n");
	                cao--;
	                if(player.health+60>player.max_health)player.health=player.max_health;
	                else player.health+=60;
	            }
	            else SlowDisplay("没有止血草了\n\n\n");
	            break;
	        case 2:
	            if(jijiubao>0)
	            {
	                SlowDisplay("使用急救包,HP增加80\n\n\n");
	                jijiubao--;
	                if(player.health+80>player.max_health)player.health=player.max_health;
	                else player.health+=80;
	            }
	            else SlowDisplay("没有急救包了\n\n\n");
	            break;
	        case 3:
	            if(baiyao>0)
	            {
	                SlowDisplay("使用云南白药,HP增加120\n\n\n");
	                baiyao--;
	                if(player.health+120>player.max_health)player.health=player.max_health;
	                else player.health+=120;
	            }
	            else SlowDisplay("没有云南白药了\n\n\n");
	            break;
	        case 4:
	            if(superbaiyao>0)
	            {
	                SlowDisplay("使用超级云南白药,HP增加200\n\n\n");
	                superbaiyao--;
	                if(player.health+200>player.max_health)player.health=player.max_health;
	                else player.health+=200;
	            }
	            else SlowDisplay("没有超级云南白药了\n\n\n");
	            break;
	        case 5:
	            if(battle) //在战斗中(battle=1),否则(battle=0)不能使用攻击性物品
	            {
	                if(boom>0)
	                {
	                    SlowDisplay("使用手雷,敌人HP减少100\n\n\n");
	                    boom--;
	                    guai.health-=100;
	                    AttackResult();
	                }
	            }
	            else SlowDisplay("非战斗状态,不能使用手雷!\n\n\n");
	            break;
	        case 6:
	            if(battle) //在战斗中(battle=1),否则(battle=0)不能使用攻击性物品
	            {
	                if(dubiao>0)
	                {
	                    SlowDisplay("使用毒标,敌人HP减少200\n\n\n");
	                    dubiao--;
	                    guai.health-=200;
	                    AttackResult();
	                }
	            }
	            else SlowDisplay("非战斗状态,不能使用毒标!\n\n\n");
	            break;
	        case 7:
	            if(battle) //在战斗中(battle=1),否则(battle=0)不能使用攻击性物品
	            {
	                if(atom_boom>0)
	                {
	                    SlowDisplay("使用手抛式原子弹,敌人HP减少500\n\n\n");
	                    atom_boom--;
	                    guai.health-=500;
	                    AttackResult();
	                }
	            }
	            else SlowDisplay("非战斗状态,不能使用手抛式原子弹!\n\n\n");
	            break;
	        case 0:
	            break;
	default:
	
	            printf("ChooseWupin error!\n\n\n");
	    }
	}
	int AttackResult() //攻击结果:判断是否获胜 是否获得物品 和 是否升级
	{
	    if(guai.health<=0)
	    {
	        battle=0;
	        printf("战斗胜利!获得金币%d,经验%d\n\n\n",guai.money,guai.exp);
	        player.exp+=guai.exp;
	        player.range_exp+=guai.exp;
	        money+=guai.money;
	        s=SuiJi();
	        if(s<guai.wupinpro)
	        {
	            SlowDisplay("从敌人尸骸中发现");
	            printf("%s\n\n\n",guai.wupin);
	            AddWupin(guai.wupin_sign);
	        }
	        WhetherLevelUp();
	        if(strcmp(guai.name,"使徒")==0)
	        {
	            puts("战斗胜利,救出公主!!!");
	            getchar();
	            getchar();
	            exit(0);
	        }
	        return 1; //攻击有结果了返回1,否则返回0,用于判断是否继续做战斗行为
	    }
	    else
	    {
	        int s=SuiJi();
	        if((guai.attack+s-player.defense/3)<0)
	        {
	            player.health-=1;
	            printf("%s反击,你的HP减少了 1\n\n",guai.name);
	        }
	        else
	        {
	            player.health-=guai.attack+s-player.defense/3;
	            printf("%s反击,你的HP减少了%d\n\n",guai.name,guai.attack+s-player.defense/3);
	        }
	        if(player.health<0)
	        {
	            battle=0;
	            printf("%s战死!金币掉落%d\n\n\n",player.name,player.level*500);
	            money-=player.level*500;
	            player.health=player.max_health/5;
	            OrdinaryAct();//////////
	            return 1;
	        }
	    }
	    return 0;
	}
	void AddWupin(int wupin_sign)
	{
	    switch(wupin_sign)
	    {
	        case 1:
	            fang4n++;
	            break;
	        case 2:
	            fang3n++;
	            break;
	        case 3:
	            fang2n++;
	            break;
	        case 4:
	            strongman_arm=1;
	            break;
	        case 5:
	            gong4n++;
	            break;
	        case 6:
	            gong3n++;
	            break;
	        case 7:
	            gong2n++;
	            break;
	default:

            printf("AddWupin error\n\n\n");
    }
	}

	void WhetherLevelUp()
	{
	    int i=0,j=0;
	    int l1=player.range_exp/100;
	    int l2=player.range_exp/300;
	    int l3=player.range_exp/600;
	    if(player.level<=15&&l1>0) //15级以下,经验足够 都满足则升级
	    {
	        if(l1==1)
	        {
	            printf("%s",player.name);
	            SlowDisplay(" 升级!\n\n\n攻击力+3, 防御力+2, HP上限+20\n\n\n");
	            player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
	            player.attack+=3;
	            player.defense+=2;
	            player.max_health+=20;
	            player.health=player.max_health;
	            player.level++;
	            player.range_exp=0;
	            player.exp=player.max_exp;
	            player.max_exp+=100;
	        }
	        else
	        {
	            printf("好厉害!连升%d级!",l1);
	            printf("攻击力+%d, 防御力+%d, HP上限+%d\n\n\n",3*l1,2*l1,20*l1);
	            player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
	            player.attack+=3*l1;
	            player.defense+=2*l1;
	            player.max_health+=20*l1;
	            player.health=player.max_health;
	            player.level+=l1;
	            player.range_exp=0;
	            player.exp=player.max_exp;
	            player.max_exp+=100*l1;
	        }
	    }
	    else if(player.level<=40&&l2>0)
	    {
	        if(l2==1)
	        {
	            printf("%s",player.name);
	            SlowDisplay(" 升级!\n\n\n攻击力+3, 防御力+2, HP上限+20\n\n\n");
	            player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
	            player.attack+=3;
	            player.defense+=2;
	            player.max_health+=20;
	            player.health=player.max_health;
	            player.level++;
	            player.range_exp=0;
	            player.exp=player.max_exp;
	            player.max_exp+=300;
	        }
	        else
	        {
	            printf("好厉害!连升%d级!",l1);
	            printf("攻击力+%d, 防御力+%d, HP上限+%d\n\n\n",3*l2,2*l2,20*l2);
	            player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
	            player.attack+=3*l2;
	            player.defense+=2*l2;
	            player.max_health+=20*l2;
	            player.health=player.max_health;
	            player.level+=l2;
	            player.range_exp=0;
	            player.exp=player.max_exp;
	            player.max_exp+=300*l2;
	        }
	    }
	    else if(l3>0)
	    {
	        if(l3==1)
	        {
	            printf("%s",player.name);
	            SlowDisplay(" 升级!\n\n\n攻击力+3, 防御力+2, HP上限+20\n\n\n");
	            player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
	            player.attack+=3;
	            player.defense+=2;
	            player.max_health+=20;
	            player.health=player.max_health;
	            player.level++;
	            player.range_exp=0;
	            player.exp=player.max_exp;
	            player.max_exp+=600;
	        }
	        else
	        {
	            printf("好厉害!连升%d级!",l1);
	            printf("攻击力+%d, 防御力+%d, HP上限+%d\n\n\n",3*l3,2*l3,20*l3);
	            player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
	            player.attack+=3*l3;
	            player.defense+=2*l3;
	            player.max_health+=20*l3;
	            player.health=player.max_health;
	            player.level+=l3;
	            player.range_exp=0;
	            player.exp=player.max_exp;
	            player.max_exp+=600*l3;
	        }
	    }
	}
	void OrdinaryAct() //正常行为菜单(移动,物品,对话,查看状态,装备,退出游戏)
	{
	    while(1)
	    {
	// \(1000);
	// system("cls");
	        puts("=============================================================================");
	        printf("要做什么?\n\n\n 1,移动 2,道具 3,对话 4,查看状态 5,装备 0,退出游戏\n\n\n");
	        puts("=============================================================================");
	        switch(scanf("%d",&choose_number),choose_number)
	        {
	            case 1: //显示移动菜单
	                SlowDisplay("要去哪里?\n\n\n");
	                printf("1,酒吧 2,旅馆 3,森林一层 4,森林二层 5,森林三层 6,草原一层 7,草原二层 8,草原三层\n\n\n");
	                switch(scanf("%d",&choose_number),choose_number)
	                {
	                    case 1:
	                        place_sign=place.bar; //记录目前位置-酒吧
	// OrdinaryAct();
	                        break;
	                    case 2:
	                        place_sign=place.hotel; //进入旅店
	                        SlowDisplay("要住店吗? 200个金币 1,是 0,否\n\n\n");
	                        choose_number=1;
	                        switch(scanf("%d",&choose_number),choose_number)
	                        {
	                            case 1:
	                                if(money-200<0) //判断钱是否够
	                                {
	                                    SlowDisplay("Sorry,你的钱不够~\n\n\n");
	                                }
	                                else
	                                {
	                                    SlowDisplay("好好休息\n\tHP满\n\t\t第二天了\n\n");
	                                    money-=200; //花费200住店费
	                                    player.health=player.max_health; //体力满
	                                }
	                                break;
	                            case 0:
	                                SlowDisplay("下次再来!\n\n\n");
	                                break;
	default: printf("hotel talk error!\n\n\n");
	
	                        }
	                        place_sign=0;
	                        break;
	                    case 3:
	                        place_sign=place.forest1;
	                        s=SuiJi();
	                        if(s<7)
	                        {
	                            battle=1;
	                            guai=xiyi;
	                            printf("%s扑了过来!\n\n\n",guai.name);
	                            BattleAct();
	                        }
	                        else if(s<9)
	                        {
	                            battle=1;
	                            guai=witch;
	                            printf("%s扑了过来!\n\n\n",guai.name);
	                            BattleAct();
	                        }
	                        else
	                        {
	                            SlowDisplay("这里安全\n\n\n");
		//不用调用OAct函数,会自动执行OAct函数;
		                        }
		                        break;
		                    case 4:
		                        place_sign=place.forest2;
		                        s=SuiJi();
		                        if(s<7)
		                        {
		                            battle=1;
		                            guai=witch;
		                            printf("%s扑了过来!\n\n\n",guai.name);
		                            BattleAct();
		                        }
		                        else if(s<9)
		                        {
		                            battle=1;
		                            guai=strongman;
		                            printf("%s扑了过来!\n\n\n",guai.name);
		                            BattleAct();
		                        }
		                        else
		                        {
		                            SlowDisplay("这里安全\n\n\n");
		                        }
		                        break;
		                    case 5:
		                        place_sign=place.forest3;
		                        s=SuiJi();
		                        if(s<7)
		                        {
		                            battle=1;
		                            guai=strongman;
		                            printf("%s扑了过来!\n\n\n",guai.name);
		                            BattleAct();
		                        }
		                        else if(s<9)
		                        {
		                            battle=1;
		                            guai=big_strongman;
		                            printf("%s扑了过来!\n\n\n",guai.name);
		                            BattleAct();
		                        }
		                        else
		                        {
		                            SlowDisplay("这里安全\n\n\n");
		                        }
		                        break;
		                    case 6:
		                        place_sign=place.grass1;
		                        s=SuiJi();
		                        if(s<7)
		                        {
		                            battle=1;
		                            guai=bee;
		                            printf("%s扑了过来!\n\n\n",guai.name);
		                            BattleAct();
		                        }
		                        else if(s<9)
		                        {
		                            battle=1;
		                            guai=horse;
		                            printf("%s扑了过来!\n\n\n",guai.name);
		                            BattleAct();
		                        }
		                        else
		                        {
		                            SlowDisplay("这里安全\n\n\n");
		                        }
		                        break;
		                    case 7:
		                        place_sign=place.grass2;
		                        s=SuiJi();
		                        if(s<7)
		                        {
		                            battle=1;
		                            guai=horse;
		                            printf("%s扑了过来!\n\n\n",guai.name);
		                            BattleAct();
		                        }
		                        else if(s<9)
		                        {
		                            battle=1;
		                            guai=lion;
		                            printf("%s扑了过来!\n\n\n",guai.name);
		                            BattleAct();
		                        }
		                        else
		                        {
		                            SlowDisplay("这里安全\n\n\n");
		                        }
		                        break;
		                    case 8:
		                        place_sign=place.grass3;
		                        s=SuiJi();
		                        if(s<7)
		                        {
		                            battle=1;
		                            guai=lion;
		                            printf("%s扑了过来!\n\n\n",guai.name);
		                            BattleAct();
		                        }
		                        else if(s<9)
		                        {
		                            battle=1;
		                            if(strongman_arm)
		                            {
		                                SlowDisplay("神秘老人:\n\n\n 哈哈,年轻人,做的不错,不过...嘿嘿,你上当啦!巨人之臂我要了,公主你也别想带走!\n\n\n");
		                                guai=shitu;
		                                printf("%s扑了过来!\n\n\n",guai.name);
		                                BattleAct();
		                            }
		                            else SlowDisplay("神秘老人:\n\n\n 年轻人,你好啊.如果你有巨人之臂,我可以告诉你公主的下落哦~\n\n\n");
		                        }
		                        else
		                        {
		                            SlowDisplay("这里安全\n\n\n");
		                        }
		                        break;
		default:
	
	                        printf("choose map error!\n\n\n");
	                }
	                break;
	            case 2:
	                ChooseWupin();
	                break; //显示道具,并可以使用.
	            case 3: //对话选项
	                if(place_sign==place.bar)
	                {
	                    SlowDisplay("要和谁说话?\n\n\n1,红发女郎 2,赏金猎人 3,酒吧老板\n\n\n"); //显示对话人物
	                    switch(scanf("%d",&choose_number),choose_number)
	                    {
	                        case 1:
	                            SlowDisplay("红发女郎:\n\n\n 吧台边那个Hunter好帅啊!(~脸红~)\n\n\n听说他经常外出打猎,外面的路他应该很熟悉的!\n\n\n");
	                            break;
	                        case 2:
	                            if(fang1n<1&&gong1n<1)
	                            {
	                                SlowDisplay("赏金猎人:\n\n\n 你要救公主啊!好胆量!\n\n\n 不过外面的丛林和草原很险恶,而且越深越危险,这是匕首和布衣,对你会有些帮助的,拿去吧!\n\n\n");
	                                printf("%s心想:(哇,这位大叔人真好啊!\n\n\n)",player.name);
	                                gong1n++;
	                                fang1n++;
	                            }
	                            else SlowDisplay("赏金猎人:\n\n\n 加油吧,年轻人!\n\n\n 不要被外面丛林和草原所吓倒!\n\n\n");
	                            break;
	                        case 3:
	                            printf("要喝点什么?\n\n\n 1,二锅头25金币 HP+20 2,XO酒80金币 HP+50 3,人头马面150金币 HP+100 0,返回\n\n\n");
	                            choose_number=1;
	                            while(choose_number)
	                            {
	                                switch(scanf("%d",&choose_number),choose_number)
	                                {
	                                    case 1:
	                                        if(money<25)
	                                        {
	                                            SlowDisplay("钱不够!");
	                                        }
	                                        else
	                                        {
	                                            if(player.health+20<=player.max_health)
	                                            {
	                                                SlowDisplay("HP+20.");
	                                                money-=25;
	                                                player.health+=20;
	                                            }
	                                            else
	                                            {
	                                                SlowDisplay("HP满了");
	                                                player.health=player.max_health;
	                                            }
	                                        }
	                                        break;
	                                    case 2:
	                                        if(money<80)
	                                        {
	                                            SlowDisplay("钱不够!");
	                                        }
	                                        else
	                                        {
	                                            if(player.health+50<=player.max_health)
	                                            {
	                                                SlowDisplay("HP+50.");
	                                                money-=80;
	                                                player.health+=50;
	                                            }
	                                            else
	                                            {
	                                                SlowDisplay("HP满了");
	                                                player.health=player.max_health;
	                                            }
	                                        }
	                                        break;
	                                    case 3:
	                                        if(money<150)
	                                        {
	                                            SlowDisplay("钱不够!");
	                                        }
	                                        else
	                                        {
	                                            if(player.health+100<=player.max_health)
	                                            {
	                                                SlowDisplay("HP+100.");
	                                                money-=150;
	                                                player.health+=100;
	                                            }
	                                            else
	                                            {
	                                                SlowDisplay("HP满了");
	                                                player.health=player.max_health;
	                                            }
	                                        }
	                                        break;
	                                    case 0:
	                                        SlowDisplay("下次再来!\n");
	                                        break;
		default: SlowDisplay("输入错误\n\n\n");
	
	                                }
	                            }
	                    }
	                }
	                else if(place_sign==place.hotel)
	                    SlowDisplay("“老板娘!我...”\n\n\n“我忙着呢,没空理你~”\n\n\n");
	                else SlowDisplay("这里好像没人可以聊天\n\n\n");
	                break;
	            case 4:
	                DisplayState();
	                break; //显示状态
	            case 5: //装备
	                printf("攻装: 1,匕首:%d个 2,长剑:%d个 3,碧血剑:%d个 4,绝世好剑:%d个\n\n\n",gong1n,gong2n,gong3n,gong4n);
	                printf("防装: 5,布衣:%d个 6,铁甲:%d个 7,银甲:%d个 8,黄金圣衣:%d个\t\t0,返回\n\n\n",fang1n,fang2n,fang3n,fang4n);
	                SlowDisplay("选择要装备的武器或防具:\n\n\n");
	                switch(scanf("%d",&choose_number),choose_number)
	                {
	                    case 1:
	                        if(gong1n>=1)
	                        {
	                            SlowDisplay("拿起了匕首\n\n\n");
	                            gong=gong1;
	                            strcpy(gongname,"匕首");
	                        }
	                        else SlowDisplay("你没有匕首可以装备\n\n\n");
	                        break;
	                    case 2:
	                        if(gong2n>=1)
	                        {
	                            SlowDisplay("拿起了长剑\n\n\n");
	                            gong=gong2;
	                            strcpy(gongname,"长剑");
	                        }
	                        else SlowDisplay("你没有长剑可以装备\n\n\n");
	                        break;
	                    case 3:
	                        if(gong3n>=1)
	                        {
	                            SlowDisplay("拿起了碧血剑\n\n\n");
	                            gong=gong3;
	                            strcpy(gongname,"碧血剑");
	                        }
	                        else SlowDisplay("你没有碧血剑可以装备\n\n\n");
	                        break;
	                    case 4:
	                        if(gong4n>=1)
	                        {
	                            SlowDisplay("拿起了绝世好剑\n\n\n");
	                            gong=gong4;
	                            strcpy(gongname,"绝世好剑");
	                        }
	                        else SlowDisplay("你没有绝世好剑可以装备\n\n\n");
	                        break;
	                    case 5:
	                        if(fang1n>=1)
	                        {
	                            SlowDisplay("穿上了布衣\n\n\n");
	                            fang=fang1;
	                            strcpy(fangname,"布衣");
	                        }
	                        else SlowDisplay("你没有布衣可以装备\n\n\n");
	                        break;
	                    case 6:
	                        if(fang2>=1)
	                        {
	                            SlowDisplay("穿上了铁甲\n\n\n");
	                            fang=fang2;
	                            strcpy(fangname,"铁甲");
	                        }
	                        else SlowDisplay("你没有铁甲可以装备\n\n\n");
	                        break;
	                    case 7:
	                        if(fang3n>=1)
	                        {
	                            SlowDisplay("穿上了银甲\n\n\n");
	                            fang=fang3;
	                            strcpy(fangname,"银甲");
	                        }
	                        else SlowDisplay("你没有银甲可以装备\n\n\n");
	                        break;
	                    case 8:
	                        if(fang4n>=1)
	                        {
	                            SlowDisplay("穿上了黄金圣衣\n\n\n");
	                            fang=fang4;
	                            strcpy(fangname,"黄金圣衣");
	                        }
	                        else SlowDisplay("你没有黄金圣衣可以装备\n\n\n");
	                        break;
	                    case 0:
	                        SlowDisplay("未更换装备\n\n\n");
	                        break;
	default:
	
	                        printf("change error!");
	                }
	                break;
	            case 0:
	                SlowDisplay("确定退出游戏?(Y/N)\n\n\n");
	                getchar();
	                proof=getchar();
	                if(proof=='y'||proof=='Y')
	                {
	                    SlowDisplay("数据存储中...");
	//向文件中更新数据;
	                    getchar();
	                    SlowDisplay("按回车退出");
	                    getchar();
	                    return;
	                }
	                else if(proof=='n'||proof=='N')printf("继续游戏!\n\n\n");
	                else SlowDisplay("继续!\n\n\n");
	                break;
	default:
	
	                SlowDisplay("输入错误!\n\n\n");
	        }
	    }
	}
	void DisplayState()
	{
	    printf("%s 攻击力:%d+%d=%d 防御力:%d+%d=%d HP:%d/%d \n\n\n",player.name,player.attack,gong,player.attack+gong,player.defense,fang,player.defense+fang,player.health,player.max_health);
	    printf("武器: %s 防具: %s \n\n\n",gongname,fangname);
	    printf("等级:%d 经验:%d/%d 还需要%d经验升级 金币:%d \n\n\n",player.level,player.exp,player.max_exp,player.max_exp-player.exp,money);
	}
	void BattleAct()
	{
	    while(1)
	    {
	        puts("=============================================================================");
	        printf("要怎么办?\n\n\n 1,攻击 2,物品 3,查看状态 4,逃跑\n\n\n");
	        switch(scanf("%d",&choose_number),choose_number)
	        {
	            case 1:
	                s=SuiJi();
	                printf("%s攻击! %sHP减少%d\n\n\n",player.name,guai.name,player.attack+s+gong-guai.defense/3);
	                guai.health-=player.attack+s+gong-guai.defense/3;
	                if(AttackResult())return; //如果攻击有结果(敌人或玩家战死)退出函数
	                else continue;
	            case 2:
	                ChooseWupin();
	                break; //选择物品,可以使用,战斗中允许使用攻击性物品
	            case 3:
	                DisplayState();
	                break; //显示状态
	            case 4:
	                s=SuiJi();
	                if(s<4) //40%的概率可以逃跑
	                {
	                    printf("%s逃跑了~\n\n\n",player.name);
	                    battle=0;
	                    return;
	                }
	                else printf("%s逃跑失败!\n\n\n",player.name);
	                break;
	default: SlowDisplay("输入错误,重新输入!\n\n\n");
	
	        }
	    }
	}
	void SlowDisplay(char *p)
	{
	    while(1)
	    {
	        if(*p!=0)
	            printf("%c",*p++);
	        else
	            break;
	        Sleep(100);
	    }
	}

俄罗斯方块:

#include
	#include
	#include
	int a[4][4],i,j,xc,yc,mouse=0,ok=0,record[2][9],foot=9,winner,first=0,who=0;
	void Place(const int x, const int y) 
	{ COORD PlaceCursorHere;PlaceCursorHere.X = y;PlaceCursorHere.Y = x;
	SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), PlaceCursorHere);
	return;
	}
	void color(int x)
	{SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),x);}
	int search(int x0,int y0,int x,int y)
	{
	mouse=GetAsyncKeyState(VK_LBUTTON);
	POINT pt; HWND h=GetForegroundWindow(); GetCursorPos(&pt); ScreenToClient(h,&pt);
	if(pt.x>=x0&&pt.y>=y0&&pt.x<=x&&pt.y<=y)
	{
	if(mouse!=0) {Sleep(100); return 2;} else return 1;
	}
	else return 0;
	}
	bool check(int x)
	{
	int b=0,c=0,d=0,e=0;
	for(i=1;i<=3;i++)
	{
	for(j=1;j<=3;j++) {b+=a[i][j]; c+=a[j][i];} d+=a[i][i]; e+=a[i][4-i];
	if(b==x||c==x||d==x||e==x) return true; b=0; c=0;
	}
	return false;
	}
	void pcmove()
	{
	int x=10,b=0,c=0,d=0,e=0; xc=0; yc=0;
	while(x>0)
	{
	for(i=1;i<=3;i++)
	{
	b=0; c=0; for(j=1;j<=3;j++) {b+=a[i][j]; c+=a[j][i];} d+=a[i][i]; e+=a[i][4-i];
	if(b==x) {for(j=1;j<=3;j++) if(a[i][j]==0) {xc=i; yc=j; return;}} if(c==x) {for(j=1;j<=3;j++) if(a[j][i]==0) {xc=j; yc=i; return;}}
	if(d==x) {for(j=1;j<=3;j++) if(a[j][j]==0) {xc=yc=j; return;}} if(e==x) {for(j=1;j<=3;j++) if(a[j][4-j]==0) {xc=j; yc=4-j; return;}}
	} x-=8;
	}
	if(a[2][2]==0) {xc=yc=2; return;} x=2;
	while(x>0) {for(i=1;i<=3;i+=x) for(j=1;j<=3;j+=x) if(a[i][j]==0) {xc=i; yc=j; return;} x--;}
	}
	void show()
	{
	int x=foot;
	for(i=1;i<=3;i++) for(j=1;j<=3;j++) if(a[i][j]!=0) {if(a[i][j]==1) color(15); else color(11); Place(2*i-1,4*j-2); printf("●");}
	color(15); Place(7,0);
	if(who==0) {if(foot%2==1) printf("1号"); else printf("2号");} else printf("电脑");
	if(who==0||first==1) x--;
	printf("下子:(%d,%d)",record[0][8-x],record[1][8-x]);
	}
	void button(int x)
	{
	if(x<3)
	{
	Place(x*3,15); printf("┌┄┄┐");
	Place(x*3+1,17); if(x==0){if(ok==0) printf("开始"); else printf("悔棋");} if(x==1) printf("重来"); if(x==2) printf("退出");
	Place(x*3+2,15); printf("└┄┄┘");
	}
	if(x>2&&x<6)
	{
	Place(10,(x-4)*7); printf("┌┄┐");
	Place(11,(x-4)*7+2); if(x==4) printf("是"); else printf("否");
	Place(12,(x-4)*7); printf("└┄┘");
	}
	if(x>5&&x<8)
	{
	Place(10,(x-6)*12); printf("┌┄┄┄┄┐");
	Place(11,(x-6)*12+2); if(x==6) printf("人机对战"); else printf("人人对战");
	Place(12,(x-6)*12); printf("└┄┄┄┄┘");
	}
	if(x>7)
	{
	Place(10,(x-8)*12); printf("┌┄┄┄┄┐");
	Place(11,(x-8)*12+2); if(x==8) printf(" 我先手 "); else printf("电脑先手");
	Place(12,(x-8)*12); printf("└┄┄┄┄┘");
	}
	}
	void menu(int x)
	{
	int k,l;
	if(x==0)
	{
	if(ok==0) {ok=1; return;}
	else if(9-foot>1)
	{
	foot+=2; for(i=9-foot;i<=11-foot;i++) {a[record[0][i]][record[1][i]]=0; record[0][i]=record[1][i]=0;}
	for(i=1;i<=3;i++) for(j=1;j<=3;j++) {Place(2*i-1,4*j-2); printf(" ");} show();
	}
	}
	if(x>0&&x<3)
	{
	for(l=10;l<=12;l++) for(j=1;j<=22;j++) {Place(l,j); printf(" ");}
	Place(9,1); printf("你想"); if(x==1) printf("重来吗?"); if(x==2) printf("退出吗?");
	button(4); button(5);
	while(1)
	{
	mouse=GetAsyncKeyState(VK_LBUTTON);
	for(i=0;i<=1;i++)
	{
	k=search(7+i*55,165,40+i*55,200);
	if(k!=2) {if(k==1) color(15); else color(7); button(i+4);}
	else 
	{for(l=9;l<=12;l++) for(j=1;j<=12;j++) {Place(l,j); printf(" ");}
	if(i==0) {if(x==1) ok=2; else exit(0);} return;
	} 
	}
	Sleep(50);
	}
	}
	if(x>2&&x<5) {if(x==3) {who=1; return;} else {who=0; return;}}
	if(x>4) {if(x==5) {first=0; return;} else {first=1; return;}}
	}
	void click()
	{
	for(i=0;i<=2;i++) 
	{ mouse=GetAsyncKeyState(VK_LBUTTON);
	int k=search(125,i*50+5,175,i*50+40);
	if(k!=2) {if(k==1) color(15); else color(7); button(i); color(7);}
	else{menu(i); return;} 
	}
	Sleep(50);
	}
	void humove()
	{
	while(1)
	{
	for(i=1;i<=3;i++) for(j=1;j<=3;j++) if(search(7+(i-1)*32,7+(j-1)*32,7+i*32,7+j*32)==2&&a[j][i]==0)
	{if(who==0&&foot%2!=1) a[j][i]=5; else a[j][i]=1; record[0][9-foot]=j; record[1][9-foot]=i; return;} click(); if(ok==2) return;
	}
	}
	void replace()
	{
	int k,l,p,q;
	Place(7,0); for(i=1;i<=15;i++) printf(" "); for(i=1;i<=3;i++) for(j=1;j<=3;j++) {Place(2*i-1,4*j-2); printf(" "); a[i][j]=0;}
	for(i=0;i<2;i++) for(j=0;j<9;j++) record[i][j]=0; foot=9; winner=0; first=0; who=0; ok=1; button(6); button(7);
	while(1)
	{
	for(i=0;i<=1;i++)
	{
	mouse=GetAsyncKeyState(VK_LBUTTON); k=search(i*80+7,165,i*80+103,200); q=search(125,105,175,140);
	if(k!=2) {if(k==1) color(15); else color(7); button(i+6); color(7);} 
	else 
	{
	menu(i+3); for(l=10;l<=12;l++) for(j=1;j<=22;j++) {Place(l,j); printf(" ");}
	if(who==1)
	{
	button(7); button(8);
	while(1)
	{
	for(j=0;j<=1;j++)
	{
	mouse=GetAsyncKeyState(VK_LBUTTON); k=search(j*80+7,165,j*80+103,200); q=search(125,105,175,140);
	if(k!=2) {if(k==1) color(15); else color(7); button(j+8); color(7);}
	else{menu(j+5); for(l=10;l<=12;l++) for(p=1;p<=22;p++) {Place(l,p); printf(" ");} return;}
	if(q!=2) {if(q==1) color(15); else color(7); button(2); color(7);} else menu(2);
	} Sleep(50);
	}
	}
	return;
	}
	if(q!=2) {if(q==1) color(15); else color(7); button(2); color(7);} else menu(2);
	}
	Sleep(50);
	}
	}
	int main()
	{
	printf("┌─┬─┬─┐\n\n├─┼─┼─┤\n\n├─┼─┼─┤\n\n└─┴─┴─┘\n\n");
	for(i=0;i<3;i++) button(i);
	while(ok==0) click();
	while(1)
	{
	replace();
	while(foot>0&&ok!=0)
	{
	if(first!=1) {humove(); show(); if(check(3)) {winner=1; ok=0; break;} foot--; if(foot<=0||ok==0||ok==2) break;}
	if(who==0&&check(15)) {winner=2;ok=0;break;}
	if(who!=0) {pcmove(); record[0][9-foot]=xc; record[1][9-foot]=yc; a[xc][yc]=5; show(); if(check(15)) {winner=2;ok=0;} foot--; first=0;}
	}
	if(ok==2) {ok=1; continue;} Place(7,0); for(i=1;i<=15;i++) printf(" ");
	Place(7,4); color(15); if(winner==0) printf("平局!");
	if(who!=0) {if(winner==1) printf("你赢了!"); if(winner==2) printf("你输了!"); Sleep(50);}
	else {if(winner==1) printf("1号赢了!"); if(winner==2) printf("2号赢了!"); Sleep(50);}
	ok=0; while(ok==0) click();
	}
	}
	#include
	#include
	#include
	
	void Place(const int x, const int y) 
	{ COORD PlaceCursorHere;PlaceCursorHere.X = y;PlaceCursorHere.Y = x;
	SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), PlaceCursorHere);
	return;
	}
	void color(int x)
	{SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),x);}
	void appear()
	{for(i=3;i<=22;i++) for(j=1;j<=15;j++) if(a[i][j]!=0) {Place(i-2,2*j); printf("■");}}
	void disappear()
	{for(i=3;i<=22;i++) for(j=1;j<=15;j++) if(a[i][j]==2) {Place(i-2,2*j); printf(" ");}}
	int search(int x0,int y0,int x,int y)
	{
	POINT pt; HWND h=GetForegroundWindow(); GetCursorPos(&pt); ScreenToClient(h,&pt);
	if(pt.x>=x0&&pt.y>=y0&&pt.x<=x&&pt.y<=y)
	{
	if(mouse!=0) {Sleep(100); return 2;} else return 1;
	}
	else return 0;
	}
	void button(int x)
	{
	int m=x*10;
	if(x<3)
	{
	Place(22,m); printf("┌┄┄┄┐");
	Place(23,m);
	{
	if(x==0) {if(ok!=0) printf("┆start ┆"); else printf("┆pause ┆");}
	if(x==1) printf("┆reset ┆"); if(x==2) printf("┆ exit ┆");
	}
	Place(24,m); printf("└┄┄┄┘");
	}
	else 
	{
	Place(9,m-33); printf("┌┄┄┐");
	Place(10,m-33); 
	{
	if(x==4) printf("┆yes ┆"); else printf("┆ no ┆");
	}
	Place(11,m-33); printf("└┄┄┘");
	}
	}
	void menu(int x)
	{
	int k,l;
	if(x==0)
	{
	if(ok!=0) {ok=0; return;}
	else while(1)
	{
	mouse=GetAsyncKeyState(VK_LBUTTON);
	Place(9,13); printf("pause");
	if(search(7,360,71,390)==2) break; Sleep(50);
	}
	Place(9,12); for(j=1;j<=6;j++) printf(" "); //appear();
	}
	else 
	{
	for(i=1;i<=20;i++) for(j=2;j<=30;j++) {Place(i,j); printf(" ");}
	Place(7,2); for(i=1;i<=15;i++) printf("┄"); Place(12,2); for(i=1;i<=15;i++) printf("┄"); 
	Place(8,6); printf("Do you want to "); if(x==1) printf("reset?"); if(x==2) printf("exit?");
	button(4); button(5);
	while(1)
	{
	mouse=GetAsyncKeyState(VK_LBUTTON);
	for(i=0;i<=1;i++)
	{
	k=search(63+i*80,150,110+i*80,180);
	if(k!=2) {if(k==1) color(15); else color(7); button(i+4);}
	else 
	{for(l=7;l<=12;l++) for(j=2;j<=30;j++) {Place(l,j); printf(" ");}
	if(i==0) {if(x==1) ok=2; else exit(0);} return;
	} 
	}
	Sleep(50);
	}
	}
	}
	void click()
	{
	for(i=0;i<=2;i++) 
	{ mouse=GetAsyncKeyState(VK_LBUTTON);
	int k=search(i*80+7,360,i*80+71,390);
	if(k!=2) {if(k==1) color(15); else color(7); button(i); color(7);}
	else{menu(i); return;} 
	}
	Sleep(50);
	}
	void ss()
	{
	Place(9,39); printf("%d",score);
	if(score>=speed*100)
	{
	speed++; ti=ti-200;
	if(ti<0) ti=0;
	else
	{
	for(i=1;i<=4;i++)
	{
	Place(9,12); printf("speed up!"); Sleep(70);
	Place(9,12); for(j=1;j<=9;j++) printf(" "); Sleep(70);
	}Sleep(200);
	}
	}
	if(best<score) best=score;
	appear(); Place(12,39); printf("%d",speed); Place(15,39); printf("%d",best);
	}
	void replace()
	{
	for(i=1;i<=20;i++) for(j=2;j<=30;j++) {Place(i,j); printf(" ");}
	for(i=0;i<=22;i++) for(j=1;j<=15;j++) a[i][j]=0; for(i=1;i<=15;i++) a[23][i]=1; for(i=1;i<=23;i++) {a[i][0]=1; a[i][16]=1;} ss();
	tim=800;ti=800;shape=0;add=0;score=0;speed=1;
	}
	void change(int x)
	{ 
	int q=0,l;
	for(l=1;l<=x;l++)
	{
	for(j=0;j<=2+add;j++)
	{
	for(i=2+add;i>=0;i--)
	{
	turn[j][q]=ta[i][j];
	q++;
	if(q>2+add) q=0;
	}    
	}
	for(i=0;i<=3;i++) for(j=0;j<=3;j++) ta[i][j]=turn[i][j];
	}
	}
	void born()
	{
	int x,q=0; srand(time(NULL)); bn=b; shape=nextshape; x=rand()%12+1; if(b==5&&x>1) {x--; add=1;}
	for(i=0;i<=2+add;i++) for(j=x;j<=x+2+add;j++) {a[i][j]=nex[i][q]; q++; if(q>2+add) q=0;}add=0;
	}
	void next()
	{
	srand(time(NULL)); b=rand()%7; nextshape=rand()%4; add=0;
	for(i=3;i<=6;i++) for(j=37;j<=45;j++) {Place(i,j); printf(" ");}
	for(i=0;i<=3;i++) for(j=0;j<=3;j++) nex[i][j]=turn[i][j]=ta[i][j]=0; ta[1][1]=2;
	if(b==0) ta[1][2]=ta[1][0]=ta[0][1]=2; if(b==1) ta[1][2]=ta[1][0]=ta[0][0]=2; if(b==2) ta[1][2]=ta[1][0]=ta[0][2]=2; if(b==3) ta[1][0]=ta[0][1]=ta[0][2]=2;
	if(b==4) ta[0][0]=ta[0][1]=ta[1][2]=2; if(b==5) {ta[1][0]=ta[1][2]=ta[1][3]=2; add=1;} if(b==6) ta[0][0]=ta[0][1]=ta[1][0]=2;
	if(nextshape>0&&b!=6)
	{change(nextshape); for(i=0;i<=3;i++) for(j=0;j<=3;j++) {nex[i][j]=turn[i][j]; if(nex[i][j]==2) {Place(i+3,j*2+37); printf("■");}}}
	else {for(i=0;i<=3;i++) for(j=0;j<=3;j++) {nex[i][j]=ta[i][j]; if(nex[i][j]==2) {Place(i+3,j*2+37); printf("■");}}}
	}
	void clear()
	{
	int c=0,f=0,l[23],s=0,k;
	for(i=3;i<=22;i++) 
	{
	l[i]=0;
	for(j=1;j<=15;j++) c=a[i][j]+c;
	if(c==15)
	{
	for(j=1;j<=15;j++) a[i][j]=0;
	for(k=i-1;k>=2;k--) for(j=1;j<=15;j++) a[k+1][j]=a[k][j];
	f++; l[i]=1; s=5;
	}
	c=0;
	}
	score=score+f*10; while(f>1) {score=score+f*5; f--;} f=0;
	while(s>0)
	{
	for(i=22;i>=3;i--) if(l[i]==1) { Place(i-2,2); for(j=1;j<=15;j++) printf("■");}Sleep(70);
	for(i=22;i>=3;i--) if(l[i]==1) { Place(i-2,2); for(j=1;j<=30;j++) printf(" ");}Sleep(70);s--;
	}
	for(i=3;i<=22;i++) for(j=1;j<=15;j++) {Place(i-2,2*j); printf(" ");} appear();
	}
	void control()
	{
	int up,down,right,left,c=0,d=0,x,y,no=0,k,l=0,q=0; k=shape; add=0;
	up=GetAsyncKeyState(VK_UP); down=GetAsyncKeyState(VK_DOWN); right=GetAsyncKeyState(VK_RIGHT); left=GetAsyncKeyState(VK_LEFT); 
	if(down!=0) { tim=0;} 
	if(left!=0||right!=0)
	{
	Sleep(100);disappear();
	for(i=0;i<=22;i++) for(j=1;j<=15;j++)
	{
	if(a[i][j]==2&&a[i][j-1]!=1) c++; if(a[i][j]==2&&a[i][j+1]!=1) d++;
	}    
	for(i=0;i<=22;i++) for(j=1;j<=15;j++) if(left!=0&&c==4&&a[i][j]==2) {a[i][j-1]=a[i][j]; a[i][j]=0;}
	for(i=0;i<=22;i++) for(j=15;j>=1;j--) if(right!=0&&d==4&&a[i][j]==2) {a[i][j+1]=a[i][j];a[i][j]=0;} appear();
	}
	if(up!=0&&bn!=6)
	{
	Sleep(150);    disappear();
	for(i=0;i<=22;i++) 
	{
	for(j=1;j<=15;j++) if(a[i][j]==2) {x=i; no=1; break;}
	if(no==1) break;
	} no=0;
	for(j=1;j<=15;j++) 
	{
	for(i=0;i<=22;i++) if(a[i][j]==2) {y=j; no=1; break;}
	if(no==1) break;
	} no=0;
	if(k==1) y--; if(k==2) x--; add=0;
	if(bn==5) {add=1; if(k==0||k==2) x--; if(k==1||k==3) y--;}
	for(i=0;i<=3;i++) for(j=0;j<=3;j++) ta[i][j]=a[x+i][y+j];
	if(bn>=0&&bn<5)
	{
	if(k==0) ta[2][0]=0; if(k==1) ta[0][0]=0; if(k==2) ta[0][2]=0; if(k==3) ta[2][2]=0;
	}
	if(bn==5) 
	{ if(k==0) ta[0][3]=ta[2][0]=ta[2][1]=ta[3][1]=ta[3][0]=0; 
	if(k==1) ta[0][0]=ta[1][0]=ta[0][1]=ta[1][1]=ta[3][3]=0;
	if(k==2) ta[3][0]=ta[0][2]=ta[0][3]=ta[1][2]=ta[1][3]=0;
	if(k==3) ta[0][0]=ta[2][2]=ta[2][3]=ta[3][2]=ta[3][3]=0; 
	}
	for(i=0;i<=2+add;i++) for(j=0;j<=2+add;j++) if(ta[i][j]!=1) l++;
	if(l==9+add*7)
	{
	change(1);
	for(i=0;i<=22;i++) for(j=1;j<=15;j++) if(a[i][j]==2) a[i][j]=0;
	for(i=0;i<=2+add;i++) for(j=0;j<=2+add;j++) if(turn[i][j]==2) a[x+i][y+j]=turn[i][j]; shape++;
	}
	if(shape>3) shape=0; appear();    
	}
	}
	int main()
	{
	int k,start,finish,d; printf("┌"); for(i=1;i<=15;i++) printf("┄"); printf("┐\n");
	for(i=1;i<=20;i++) printf("┆\n"); printf("└");
	for(i=1;i<=15;i++) printf("┄"); printf("┘"); for(i=1;i<=20;i++) {Place(i,32); printf("┆\n");} 
	Place(2,37); printf("NEXT"); Place(8,37); printf("SCORE"); Place(14,37); printf("BEST"); Place(11,37); printf("SPEED");
	for(i=0;i<=2;i++) button(i);
	while(ok==1) click();
	while(ok!=1)
	{
	replace(); next();
	while(1)
	{
	born();
	next();
	while(1)
	{
	appear();
	k=0;
	start=clock();
	while(1)
	{
	finish=clock(); d=finish-start;
	if(d>=tim) break;
	control(); click(); if(ok==2) break;
	}
	if(ok==2) break; disappear();
	for(i=22;i>=0;i--)    for(j=1;j<=15;j++) if(a[i][j]==2&&a[i+1][j]!=1) k++; 
	if(k==4)
	{
	for(i=22;i>=0;i--)    for(j=1;j<=15;j++) if(a[i][j]==2) 
	{
	a[i+1][j]=2;a[i][j]=0;
	}
	}
	else 
	{
	for(i=22;i>=0;i--)    for(j=1;j<=15;j++) if(a[i][j]==2) a[i][j]=1;
	break;
	}
	tim=ti; appear();
	}
	if(ok==2) break;
	appear();clear();ss();
	for(i=1;i<=15;i++) if(a[2][i]==1) {ok=1; break;}
	}
	if(ok==2) {ok=0; continue;}
	for(i=1;i<=20;i++) for(j=2;j<=30;j++) {Place(i,j); printf(" ");}
	Place(9,12); printf("GAME OVER!");
	while(ok==1) click();
	}
	return 0;
	}

买彩票

#include 
	#include 
	#include 
	#include 
	#include 
	#include 
	#include 
	#include 
	#include 
	#include 
	using namespace std;
	int money=100;
	int t=0;
	int tt=-1;
	int v;
	int d;
	void borrow()
	{
	    if(tt!=-1)
	    {
	        cout<<"你现在不能借钱"<<endl;
	        return;
	    }
	    cout<<"你要借多少钱?"<<endl;
	    cin>>v;
	    if (d==1||d==2)
	    {
	        if (v>1000) cout<<"你不能借这么多钱!"<<endl,cout<<"你要借多少钱?"<<endl,cin>>v;
	        if (v<=1000) money+=v,cout<<"10天以后你要还"<<2*v<<"美元"<<endl;
	        return;
	    }
	    else
	    {
	        if (v>100) cout<<"你不能借这么多钱!"<<endl,cout<<"你要借多少钱?"<<endl,cin>>v;
	        if (v<=100) money+=v,cout<<"10天以后你要还"<<2*v<<"美元"<<endl;
	        return;
	    }
	}
	bool pay()
	{
	    cout<<"你现在要还 "<<2*v<<endl;
	    money-=2*v;
	    tt=-1;
	    v=0;
	    if(money<=0) return false;
	    else return true;
	}
	int main(int argc, char *argv[])
	{
	    cout<<"欢迎来到彩票游戏!"<<endl<<endl<<"温馨提示:在游戏内请勿使用小数、负数、英文字母、特殊字符(游戏中另说明除外),"<<endl<<"否则后果自负。"<<endl<<endl;
	    cout<<"请选择难度(输入序号即可):"<<endl<<"1:入门"<<" "<<"2:简单"<<" "<<"3:普通"<<" "<<"4:中等"<<" "<<"5:困难"<<endl;
	    cin>>d;
	    if (d==1) cout<<"已选择难度:入门"<<endl<<endl;
	    if (d==2) cout<<"已选择难度:简单"<<endl<<endl;
	    if (d==3) cout<<"已选择难度:普通"<<endl<<endl;
	    if (d==4) cout<<"已选择难度:中等"<<endl<<endl;
	    if (d==5) cout<<"已选择难度:困难"<<endl<<endl;
	    while(1)
	    {
	        if (d<1) cout<<"没有这个选项"<<endl<<"请选择难度(输入序号即可):"<<endl<<"1:入门"<<" "<<"2:简单"<<" "<<"3:普通"<<" "<<"4:中等"<<" "<<"5:困难"<<endl,cin>>d;
	        if (d>5) cout<<"没有这个选项"<<endl<<"请选择难度(输入序号即可):"<<endl<<"1:入门"<<" "<<"2:简单"<<" "<<"3:普通"<<" "<<"4:中等"<<" "<<"5:困难"<<endl,cin>>d;
	        if (d==1 || d==2 || d==3 || d==4 || d==5) break;
	    }
	    bool flag=true;
	    srand(time(0));
	    int a[10000];
	    int n,p;
	    char c[4];
	    if (d==1)
	    {
	        cout<<"每张彩票 购入价为1美元,出售价为5美元,有五个奖项"<<endl<<"小奖:10美元"<<endl<<"中奖:20美元"<<endl<<"大奖:100美元"<<endl<<"巨额奖金:1,000美元"<<endl<<"杰克壶:10,000美元"<<endl;
	        cout<<"你有100美元,当你赚了超过10,000美元,你就发财了。"<<endl<<"但如果你失去了所有的钱,你破产了。"<<endl;
	        cout<<"你可能想借钱(最多1,000美元),如果你想,按0。"<<endl<<"请记住,当你借了十天以后。你必须偿还两倍,"<<endl;
	        cout<<"你想买彩票还是卖彩票?(buy/sell)"<<endl;
	    }
	    if (d==2)
	    {
	        cout<<"每张彩票 购入价为2美元,出售价为3美元,有五个奖项"<<endl<<"小奖:5美元"<<endl<<"中奖:20美元"<<endl<<"大奖:100美元"<<endl<<"巨额奖金:1,000美元"<<endl<<"杰克壶:10,000美元"<<endl;
	        cout<<"你有100美元,当你赚了超过10,000美元,你就发财了。"<<endl<<"但如果你失去了所有的钱,你破产了。"<<endl;
	        cout<<"你可能想借钱(最多1,000美元),如果你想,请按0。"<<endl<<"请记住,当你借了十天以后。你必须偿还两倍,"<<endl;
	        cout<<"你想买彩票还是卖彩票?(buy/sell)"<<endl;
	    }
	    if (d==3)
	    {
	        cout<<"每张彩票 售价2美元,有五个奖项"<<endl<<"小奖:5美元"<<endl<<"中奖:20美元"<<endl<<"大奖:100美元"<<endl<<"巨额奖金:1,000美元"<<endl<<"杰克壶:10,000美元"<<endl;
	        cout<<"你有100美元,当你赚了超过10,000美元,你就发财了。"<<endl<<"但如果你失去了所有的钱,你破产了。"<<endl;
	        cout<<"你可能想借钱(最多100美元),如果你想,请按0。"<<endl<<"请记住,当你借了十天以后。你必须偿还两倍,"<<endl;
	        cout<<"你想买彩票还是卖彩票?(buy/sell)"<<endl;
	    }
	    if (d==4)
	    {
	        cout<<"每张彩票 售价3美元,有五个奖项"<<endl<<"小奖:5美元"<<endl<<"中奖:20美元"<<endl<<"大奖:100美元"<<endl<<"巨额奖金:1,000美元"<<endl<<"杰克壶:10,000美元"<<endl;
	        cout<<"你有100美元,当你赚了超过100,000美元,你就发财了。"<<endl<<"但如果你失去了所有的钱,你破产了。"<<endl;
	        cout<<"你可能想借钱(最多100美元),如果你想,请按0。"<<endl<<"请记住,当你借了七天以后。你必须偿还两倍,"<<endl;
	        cout<<"你想买彩票还是卖彩票?(buy/sell)"<<endl;
	    }
	    if (d==5)
	    {
	        cout<<"每张彩票 购入价为5美元,出售价为2美元,有五个奖项"<<endl<<"小奖:5美元"<<endl<<"中奖:20美元"<<endl<<"大奖:100美元"<<endl<<"巨额奖金:1,000美元"<<endl<<"杰克壶:5,000美元"<<endl;
	        cout<<"你有100美元,当你赚了超过100,000美元,你就发财了。"<<endl<<"但如果你失去了所有的钱,你就破产了。"<<endl;
	        cout<<"你可能想借钱(最多100美元),如果你想,请按0。"<<endl<<"请记住,当你借了五天以后。你必须偿还两倍,"<<endl;
	        cout<<"你想买彩票还是卖彩票?(buy/sell)"<<endl;
	    }
	    cin>>c;
	    if(c[0]=='b'||c[0]=='B')
	    {
	        while(money>0)
	        {
	            if (d==1||d==2||d==3) if(money>=10000)
	                {
	                    cout<<"你发财了! "<<endl;
	                    cout<<"你花了 "<<t<<"天"<<endl;
	                    system("pause");
	                    return 0;
	                }
	            if (d==4||d==5) if(money>=100000)
	                {
	                    cout<<"你发财了! "<<endl;
	                    cout<<"你花了 "<<t<<"天"<<endl;
	                    system("pause");
	                    return 0;
	                }
	            t++;
	            cout<<"你要买几张票?"<<" "<<"你有$"<<money<<endl;
	            cin>>n;
	            if(n==0)
	            {
	                if (d=4)
	                {
	                    borrow();
	                    tt=t+7;
	                }
	                if (d=5)
	                {
	                    borrow();
	                    tt=t+5;
	                }
	                else
	                {
	                    borrow();
	                    tt=t+10;
	                }
	            }
	            if(t==tt)
	            {
	                flag=pay();
	            }
	            if(t==tt-1) cout<<"[警告]你必须在明天还钱!"<<endl;
	            if(flag==false)
	            {
	                cout<<"你不能偿还你借的钱!"<<endl;
	                cout<<"你破产了。"<<endl;
	                cout<<"你生存了"<<t<<"天。"<<endl;
	                system("pause");
	                return 0;
	            }
	            flag=true;
	            if(n<0)
	            {
	                cout<<"因为你违反规则,所以系统强制停止了你的游戏"<<endl;
	                system("pause");
	            }
	            if (d==1) money=money-n;
	            if (d==2||d==3) money=money-n*2;
	            if (d==4) money=money-n*3;
	            if (d==5) money=money-n*5;
	            if(money<0)
	            {
	                cout<<"你破产了。"<<endl;
	                cout<<"你生存了"<<t<<"天"<<endl;
	                system("pause");
	                return 0;
	            }
	            for(int i=0; i<n; i++)
	            {
	                p=rand()%12000;
	                if(p==0)
	                {
	                    int q=0;
	                    q=rand()%4;
	                    if(q==1)
	                    {
	                        cout<<"你获得了杰克壶!"<<endl;
	                        if (d==5) money+=5000;
	                        else money+=10000;
	                    }
	                }
	                else if(p>=1&&p<=8)
	                {
	                    int g=0;
	                    g=rand()%2;
	                    if(g==0)
	                    {
	                        cout<<"你获得了巨额奖金! "<<endl;
	                        money+=1000;
	                    }
	                }
	                else if(p>=9&&p<=99)
	                {
	                    cout<<"你获得了大奖!"<<endl;
	                    money+=100;
	                }
	                else if((p>=100&&p<=399)||(p>1500&&p<=1600))
	                {
	                    cout<<"你获得了中间奖!"<<endl;
	                    money+=20;
	                }
	                else if(p>=400&&p<=1500)
	                {
	                    cout<<"你获得了小奖!"<<endl;
	                    if (d==1) money+=10;
	                    else money+=5;
	                }
	            }
	            if(money<=0)
	            {
	                cout<<"你破产了。"<<endl;
	                cout<<"你生存了"<<t<<"天。"<<endl;
	                system("pause");
	                return 0;
	            }
	        }
	    }
	    if(c[0]=='s'||c[0]=='S')
	    {
	        if (d==1)
	        {
	            cout<<"你有$"<<money<<endl;
	            cout<<"你必须付25美元买一个商店。 "<<endl;
	            cout<<"你只能卖同样数量的票作为你的钱。 "<<endl;
	            money-=25;
	        }
	        if (d==2)
	        {
	            cout<<"你有$"<<money<<endl;
	            cout<<"你必须付35美元买一个商店。 "<<endl;
	            cout<<"你只能卖同样数量的票作为你的钱。 "<<endl;
	            money-=35;
	        }
	        if (d==3||d==4)
	        {
	            cout<<"你有$"<<money<<endl;
	            cout<<"你必须付50美元买一个商店。 "<<endl;
	            cout<<"你只能卖同样数量的票作为你的钱。 "<<endl;
	            money-=50;
	        }
	        if (d==5)
	        {
	            cout<<"你有$"<<money<<endl;
	            cout<<"你必须付60美元买一个商店。 "<<endl;
	            cout<<"你只能卖同样数量的票作为你的钱。 "<<endl;
	            money-=60;
	        }
	        cout<<"你有$"<<money<<endl;
	        while(money>0)
	        {
	            if (d==1||d==2||d==3) if(money>=10000)
	                    if (d==4||d==5) if(money>=100000)
	                        {
	                            cout<<"你发财了!"<<endl;
	                            cout<<"你花了"<<t<<"天。"<<endl;
	                            system("pause");
	                            return 0;
	                        }
	            t++;
	            cout<<"你要卖几张票? "<<" "<<"你有$"<<money<<endl;
	            cin>>n;
	            if(n==0)
	            {
	                borrow();
	                tt=t+10;
	            }
	            if(t==tt) bool flag=pay();
	            if(flag==false)
	            {
	                cout<<"你不能偿还你借的钱。"<<endl;
	                cout<<"你破产了!"<<endl;
	                cout<<"你生存了"<<t<<" 天。"<<endl;
	                system("pause");
	                return 0;
	            }
	            if(n<0 || n>money)
	            {
	                cout<<"注意"<<endl;
	                cout<<"你破产了!"<<endl;
	                cout<<"你生存了"<<t<<" 天"<<endl;
	                system("pause");
	                return 0;
	            }
	            if (d=1) money=money+n*5;
	            if (d=2) money=money+n*3;
	            else money=money+n*2;
	            if(money<0)
	            {
	                cout<<"你破产了!"<<endl;
	                cout<<"你生存了"<<t<<" 天"<<endl;
	                system("pause");
	                return 0;
	            }
	            for(int i=0; i<n; i++)
	            {
	                p=rand()%12000;
	                if(p==0)
	                {
	                    int y;
	                    y=rand()%4;
	                    if(y==1)
	                    {
	                        cout<<"你失去了杰克壶!"<<endl;
	                        if (d==5) money-=5000;
	                        else money-=10000;
	                    }
	                }
	                else if(p>=1&&p<=8)
	                {
	                    cout<<"你失去了巨额奖金!"<<endl;
	                    money-=1000;
	                }
	                else if(p>=15&&p<=50)
	                {
	                    cout<<"你失去了大奖!"<<endl;
	                    money-=100;
	                }
	                else if(p>=61&&p<=360)
	                {
	                    cout<<"你失去了中奖!"<<endl;
	                    money-=20;
	                }
	                else if(p>=401&&p<=1500)
	                {
	                    cout<<"你失去了小奖!"<<endl;
	                    money-=5;
	                }
	            }
	        }
	    }
	    if(money<=0)
	    {
	        cout<<"你破产了。"<<endl;
	        cout<<"你生存了"<<t<<"天。"<<endl;
	        system("pause");
	        return 0;
	    }
	}

三国杀

#include
		#include
		#include
		#include 
		using namespace std;
		struct pai
		{
		int paifu;
		int huase;
		int yanse;
		int dianshu;
		int leixing;
		int changdu;
		void Kanpai()
		{
		if(paifu==0||paifu==1);
		else
		printf("牌副参数错误!\n");
		switch(huase)
		{
		case 0:cout<<"黑桃";break;
		case 1:cout<<"红桃";break;
		case 2:cout<<"草花";break;
		case 3:cout<<"方片";break;
		case -1:cout<<"无色";break;
		default:printf("花色错误!\n");break;
		}
		switch(dianshu)
		{
		case 0:cout<<"A ";break;
		case 1:cout<<"2 ";break;
		case 2:cout<<"3 ";break;
		case 3:cout<<"4 ";break;
		case 4:cout<<"5 ";break;
		case 5:cout<<"6 ";break;
		case 6:cout<<"7 ";break;
		case 7:cout<<"8 ";break;
		case 8:cout<<"9 ";break;
		case 9:cout<<"10 ";break;
		case 10:cout<<"J ";break;
		case 11:cout<<"Q ";break;
		case 12:cout<<"K ";break;
		case -1:cout<<"无点数";break;
		default:printf("点数错误!\n");break;
		}
		switch(leixing)
		{
		case 101:cout<<"【杀】"<<endl;break;
		case 102:cout<<"【闪】"<<endl;break;
		case 103:cout<<"【桃】"<<endl;break;
		case 201:cout<<"【过河拆桥】"<<endl;break;
		case 202:cout<<"【顺手牵羊】"<<endl;break;
		case 203:cout<<"【无中生有】"<<endl;break;
		case 204:cout<<"【决斗】"<<endl;break;
		case 205:cout<<"【借刀杀人】"<<endl;break;
		case 206:cout<<"【桃园结义】"<<endl;break;
		case 207:cout<<"【五谷丰登】"<<endl;break;
		case 208:cout<<"【南蛮入侵】"<<endl;break;
		case 209:cout<<"【万箭齐发】"<<endl;break;
		case 210:cout<<"【无懈可击】"<<endl;break;
		case 251:cout<<"【乐不思蜀】"<<endl;break;
		case 252:cout<<"【闪电】"<<endl;break;
		case 301:cout<<"【诸葛连弩(1)】"<<endl;break;
		case 302:cout<<"【雌雄双股剑(2)】"<<endl;break;
		case 303:cout<<"【青釭剑(2)】"<<endl;break;
		case 304:cout<<"【青龙偃月刀(3)】"<<endl;break;
		case 305:cout<<"【丈八蛇矛(3)】"<<endl;break;
		case 306:cout<<"【贯石斧(3)】"<<endl;break;
		case 307:cout<<"【方天画戟(4)】"<<endl;break;
		case 308:cout<<"【麒麟弓(5)】"<<endl;break;
		case 331:cout<<"【八卦阵】"<<endl;break;
		case 361:cout<<"【赤兔(-1)】"<<endl;break;
		case 362:cout<<"【大宛(-1)】"<<endl;break;
		case 363:cout<<"【紫辛(-1)】"<<endl;break;
		case 381:cout<<"【爪黄飞电(+1)】"<<endl;break;
		case 382:cout<<"【的卢(+1)】"<<endl;break;
		case 383:cout<<"【绝影(+1)】"<<endl;break;
		default:printf("类型参数错误!");break;
		}
		}
		};
		void Qishixipai(pai A[2][4][13],pai paidui[104])
		{
		int i,m,x,y,z,a[104]={0};
		srand((unsigned)time(NULL));
		for(i=1;i<=104;i++)
		{
		while(a[m=rand()%104]);
		a[m]=i;
		}
		for(i=0;i<=103;i++)
		{
		x=(a[i]-1)/52;
		y=((a[i]-1)-52*x)/13;
		z=(a[i]-1)%13;
		paidui[i]=A[x][y][z];
		}
		}
		void Xipai(pai paidui[104],int*paiduishu,pai qipaidui[104],int*qipaishu)
		{
		int i,m,a[104]={0};
		srand((unsigned)time(NULL));
		for(i=1;i<=(*qipaishu);i++)
		{
		while(a[m=rand()%(*qipaishu)]);
		a[m]=i;
		}
		for(i=0;i<=((*qipaishu)-1);i++)
		{
		paidui[i]=qipaidui[a[i]];
		qipaidui[a[i]].leixing=-1;
		(*paiduishu)++;
		(*qipaishu)--;
		}
		for(i=(*paiduishu);i<=103;i++)paidui[i].leixing=-1;
		}
		pai Mo1pai(pai A[104],int *x,pai B[104],int*y,int *b)
		{
		pai p;
		if((*x)==0)Xipai(A,x,B,y);
		else if((*x)<0)printf("摸牌参数错误!");
		else;
		p=A[104-(*x)];
		(*x)--;
		(*b)++;
		return(p);
		}
		struct wujiang
		{
		char name;
		int tili;
		int tilishangxian;
		int shoupaishangxian;
		int huihekaishi;
		int panding;
		int mopai;
		int chupai;
		int qipai;
		int huihejieshu;
		int juese;
		pai shoupai[20];
		int shoupaishu;
		pai zhuangbei[4];
		int zhuangbeishu;
		pai pandingpai[3];
		int pandingshu;
		int juli[1];
		void Kanshoupai()
		{
		printf("玩家当前手牌:\n");
		if(shoupaishu)
		{
		int m;
		for(m=0;m<=(shoupaishu-1);m++)
		{
		printf("%d ",m);
		(shoupai[m]).Kanpai();
		}
		}
		else printf("空城!\n");
		printf("\n");
		}
		void Kanzhuangbei()
		{
		if(juese)printf("玩家");
		else printf("电脑");
		printf("当前装备:\n");
		printf("0 武器: ");
		if((zhuangbei[0]).leixing==-1)printf("空\n");
		else (zhuangbei[0]).Kanpai();
		printf("1 防具: ");
		if((zhuangbei[1]).leixing==-1)printf("空\n");
		else (zhuangbei[1]).Kanpai();
		printf("2 进攻马: ");
		if((zhuangbei[2]).leixing==-1)printf("空\n");
		else (zhuangbei[2]).Kanpai();
		printf("3 防御马: ");
		if((zhuangbei[3]).leixing==-1)printf("空\n");
		else (zhuangbei[3]).Kanpai();
		printf("\n");
		}
		void Kanpandingpai()
		{
		if(juese)printf("玩家");
		else printf("电脑");
		printf("当前判定区:\n");
		if((pandingpai[0]).leixing==-1)printf("空\n");
		else
		{
		printf("0 ");
		(pandingpai[0]).Kanpai();
		if((pandingpai[1]).leixing==-1);
		else
		{
		printf("1 ");
		(pandingpai[1]).Kanpai();
		if((pandingpai[2]).leixing==-1);
		else
		{
		printf("2 ");
		(pandingpai[2]).Kanpai();
		}
		}
		}
		}
		};
		void Mopai(int*shoupaishu,pai shoupai[20],pai A[104],int *x,pai B[104],int*y,int juese)
		{
		if(juese)printf("玩家从牌堆摸2张牌\n");
		else printf("电脑从牌堆摸2张牌\n");
		pai p;
		p=Mo1pai(A,x,B,y,shoupaishu);
		shoupai[*shoupaishu-1]=p;
		pai q;
		q=Mo1pai(A,x,B,y,shoupaishu);
		shoupai[*shoupaishu-1]=q;
		int m;
		if(juese)
		{
		printf("玩家当前手牌:\n");
		for(m=0;m<=(*shoupaishu-1);m++)
		{
		printf("%d ",m);
		(shoupai[m]).Kanpai();
		}
		}
		printf("牌堆还剩%d张牌!\n\n",*x);
		}
		void Qishishoupai(wujiang *w,pai A[104],int *x,pai B[104],int*y)
		{
		pai a;
		a=Mo1pai(A,x,B,y,&((*w).shoupaishu));
		(*w).shoupai[(*w).shoupaishu-1]=a;
		pai b;
		b=Mo1pai(A,x,B,y,&((*w).shoupaishu));
		(*w).shoupai[(*w).shoupaishu-1]=b;
		pai c;
		c=Mo1pai(A,x,B,y,&((*w).shoupaishu));
		(*w).shoupai[(*w).shoupaishu-1]=c;
		pai d;
		d=Mo1pai(A,x,B,y,&((*w).shoupaishu));
		(*w).shoupai[(*w).shoupaishu-1]=d;
		int m;
		if((*w).juese)printf("玩家从牌堆摸4张牌\n");
		else printf("电脑从牌堆摸4张牌\n");
		if((*w).juese)
		{
		printf("玩家当前手牌:\n");
		for(m=0;m<=((*w).shoupaishu-1);m++)
		{
		printf("%d ",m);
		((*w).shoupai[m]).Kanpai();
		}
		}
		printf("牌堆还剩%d张牌!\n\n",*x);
		}
		void Panding(pai paidui[104],int*paiduishu,pai qipaidui[104],int*qipaishu)
		{
		paidui[*paiduishu].Kanpai();
		qipaidui[*qipaishu]=paidui[*paiduishu];
		(*paiduishu)--;
		(*qipaishu)++;
		}
		pai Zhangba(wujiang*w,pai qipaidui[104],int*qipaishu)
		{
		int x,y;
		pai p;
		for(;;)
		{
		int i,j;
		printf("请输入任意两张手牌之前的编号,以空格隔开,以回车结束!\n");
		scanf("%d",&x);
		scanf("%d",&y);
		if((x>=0)&&(x<(*w).shoupaishu)&&(y>=0)&&(y<(*w).shoupaishu-1))
		{
		switch((((*w).shoupai[x].huase)%2)+(((*w).shoupai[y].huase)%2))
		{
		case 0:p.yanse=0;break;
		case 2:p.yanse=1;break;
		case 1:p.yanse=2;break;
		default:printf("【丈八蛇矛】函数参数错误!\n");
		}
		qipaidui[*qipaishu]=(*w).shoupai[x];
		(*w).shoupai[x].leixing=-1;
		((*w).shoupaishu)--;
		(*qipaishu)++;
		qipaidui[*qipaishu]=(*w).shoupai[y];
		(*w).shoupai[y].leixing=-1;
		((*w).shoupaishu)--;
		(*qipaishu)++; printf("弃牌数:%d",*qipaishu);
		for(i=0;i<=(((*w).shoupaishu)+1);i++)
		{
		if((*w).shoupai[i].leixing==-1)
		{
		for(j=i+1;j<=(((*w).shoupaishu)+2);j++)
		(*w).shoupai[j-1]=(*w).shoupai[j];
		i--;
		}
		}
		printf("玩家把:\n");
		qipaidui[(*qipaishu)-2].Kanpai();
		qipaidui[(*qipaishu)-1].Kanpai();
		printf("当作一张");
		switch(p.yanse)
		{
		case 0:printf("黑色");break;
		case 2:printf("红色");break;
		case 1:printf("无色");break;
		default:printf("绿色");break;
		}
		printf("无点数的【杀】");
		p.dianshu=-1;
		p.leixing=101;
		return p;
		break;
		}
		printf("你将两张空气当作一张空气属性的【杀】使用或打出!\n");
		}
		}
		int Xuanpai(wujiang*w,int t)
		{
		int x;
		if((*w).juese)
		{
		for(;;)
		{
		printf("出牌请输入手牌之前的编号,以回车结束!\n如果你想结束出牌阶段,请输入“-1”,以回车结束!\n");
		scanf("%d",&x);
		if((x>=-1&&x<((*w).shoupaishu))||((x==100)&&((*w).zhuangbei[0].leixing==305)))
		{
		return x;
		break;
		}
		printf("你打出了一张空气!\n");
		}
		}
		else return t;
		}
		pai Panpai(wujiang*w1,int*sha,int y,pai qipaidui[104],int*qipaishu)
		{
		pai p,q;
		p.leixing=0;
		q.leixing=-1;
		if(y==-1)return q;
		else
		{
		if(y==100)
		{
		if((*sha)>0)
		{
		q=Zhangba(w1,qipaidui,qipaishu);
		printf("使用!\n");
		return q;
		}
		else
		{
		printf("当前回合使用【杀】的次数已用尽,你也不能使用【丈八蛇矛】效果!\n");
		return p;
		}
		}
		switch((*w1).shoupai[y].leixing)
		{
		case 101:
		if(((*sha)>0)||((*w1).zhuangbei[0].leixing==301))
		{
		if(((*w1).zhuangbei[0].leixing==301))printf("武器【诸葛连弩】效果被触发!\n");
		return (*w1).shoupai[y];
		break;
		}
		else
		{
		if((*w1).juese)printf("当前回合使用【杀】的次数已用尽,你不能使用【杀】!\n");
		return p;break;
		}
		case 102:
		if((*w1).juese)
		printf("当前不需要响应任何操作,你不能主动打出【闪】!\n");
		return p;break;
		case 103:
		if(((*w1).tili)<((*w1).tilishangxian))
		{
		return (*w1).shoupai[y];
		break;
		}
		else
		{
		if((*w1).juese)
		printf("你并未受伤,不能对自己使用【桃】!\n");
		}
		return p;break;
		case 210:
		if((*w1).juese)
		printf("当前不需要响应任何锦囊,你不能主动打出【无懈可击】!\n");
		return p;break;
		case 201:
		case 202:
		case 203:
		case 204:
		case 205:
		case 206:
		case 207:
		case 208:
		case 209:
		case 251:
		case 252:
		case 301:
		case 302:
		case 303:
		case 304:
		case 305:
		case 306:
		case 307:
		case 308:
		case 331:
		case 361:
		case 362:
		case 363:
		case 381:
		case 382:
		case 383:return (*w1).shoupai[y];break;
		default:printf("手牌类型参数错误!\n");return p;break;
		}
		}
		}
		int Mubiao(pai p,wujiang *w1,wujiang *w2,int*sha)
		{
		int x;
		switch(p.leixing)
		{
		case 101:
		if((*w1).juese)
		{
		printf("请选择【杀】的目标!\n输入目标前的编号,以回车结束!\n0 电脑1\n");
		scanf("%d",&x);
		if(x==0)
		{
		if((*w1).zhuangbei[0].changdu>=(*w1).juli[0])
		{
		(*sha)--;
		return((*w2).juese);
		}
		else
		{
		printf("武器长度不够!\n");
		return -2;
		}
		}
		else
		{
		printf("目标错误!\n");
		return -2;
		}
		}
		else
		{
		if((*w1).zhuangbei[0].changdu>=(*w1).juli[0])
		{
		(*sha)--;
		return((*w2).juese);
		}
		else return -2;
		}
		break;
		case 103:return((*w1).juese);break;
		case 201:
		if((*w1).juese)
		{
		printf("请选择【过河拆桥】的目标!\n输入目标前的编号,以回车结束!\n0 电脑1\n");
		scanf("%d",&x);
		if(x==0)
		{
		if((*w2).shoupaishu||(*w2).zhuangbeishu||(*w2).pandingshu)return((*w2).juese);
		else
		{
		printf("目标没有牌!\n");
		return -2;
		}
		}
		else
		{
		printf("目标错误!\n");
		return -2;
		}
		}
		else return((*w2).juese);
		break;
		case 202:
		if((*w1).juese)
		{
		printf("请选择【顺手牵羊】的目标!\n输入目标前的编号,以回车结束!\n0 电脑1\n");
		scanf("%d",&x);
		if(x==0)
		{
		if(((*w2).shoupaishu||(*w2).zhuangbeishu||(*w2).pandingshu)&&((*w1).juli[0]<=1))return((*w2).juese);
		else
		{
		printf("目标没有牌!\n");
		return -2;
		}
		}
		else
		{
		printf("目标错误!\n");
		return -2;
		}
		}
		else
		{
		if((*w1).juli[0]<=1)return((*w2).juese);
		else return -2;
		}
		break;
		case 203:
		return((*w1).juese);break;
		case 204:
		if((*w1).juese)
		{
		printf("请选择【决斗】的目标!\n输入目标前的编号,以回车结束!\n0 电脑1\n");
		scanf("%d",&x);
		if(x==0)return((*w2).juese);
		else
		{
		printf("目标错误!\n");
		return -2;
		}
		}
		else return((*w2).juese);
		break;
		case 205:
		int y;
		if((*w1).juese)
		{
		printf("请选择【借刀杀人】的目标!\n输入目标前的编号,以回车结束!\n0 电脑1\n");
		scanf("%d",&x);
		if(x!=0)
		{
		printf("目标错误!\n");
		return -2;
		}
		else
		{
		if(((*w2).zhuangbei[0]).leixing<=300||((*w2).zhuangbei[0]).leixing>=331)
		{
		printf("目标装备区里没有武器!\n");
		return -2;
		}
		else
		{
		printf("请选择【杀】的目标!\n提示:【杀】的目标必须在【借刀杀人】的目标的攻击范围之内!\n输入目标前的编号,以回车结束!\n0 玩家\n");
		scanf("%d",&y);
		if(y!=0)
		{
		printf("目标错误!\n");
		return -2;
		}
		else
		{
		if(((*w2).zhuangbei[0].changdu)<(*w2).juli[0])
		{
		printf("武器距离不够!\n");
		return -2;
		}
		else
		return((*w2).juese);
		}
		}
		}
		}
		else
		{
		if(((*w2).zhuangbei[0]).leixing<=300||((*w2).zhuangbei[0]).leixing>=331)return -2;
		else
		{
		if(((*w2).zhuangbei[0].changdu)<(*w2).juli[0])return -2;
		else return((*w2).juese);
		}
		}
		break;
		case 206:
		case 207:return 99;break;
		case 208:
		case 209:return 100;break;
		case 251:
		if((*w1).juese)
		{
		printf("请选择【乐不思蜀】的目标!\n输入目标前的编号,以回车结束!\n0 电脑1\n");
		scanf("%d",&x);
		if(x==0)
		{
		int i;
		for(i=0;i<=2;i++)
		{
		if((*w2).pandingpai[i].leixing==251)
		i=-1;
		break;
		}
		if(i==-1)
		{
		printf("目标判定区里不能同时存在两张相同的延时类锦囊!\n");
		return -2;
		}
		else return((*w2).juese);
		}
		else
		{
		printf("目标错误!\n");
		return -2;
		}
		}
		else
		{
		int i;
		for(i=0;i<=2;i++)
		{
		if((*w2).pandingpai[i].leixing==251)
		i=-1;
		break;
		}
		if(i==-1)return -2;
		else return((*w2).juese);
		}
		break;
		case 252:
		int i;
		for(i=0;i<=2;i++)
		{
		if((*w1).pandingpai[i].leixing==252)
		i=-1;
		break;
		}
		if(i==-1)
		{
		if((*w1).juese)printf("目标判定区里不能同时存在两张相同的延时类锦囊!\n");
		return -2;
		}
		else return ((*w1).juese);
		break;
		case 301:
		case 302:
		case 303:
		case 304:
		case 305:
		case 306:
		case 307:
		case 308:
		case 331:
		case 361:
		case 362:
		case 363:
		case 381:
		case 382:
		case 383:return((*w1).juese);break;
		default:return -2;break;
		}
		}
		void Da1pai(wujiang *w1,wujiang*w2,pai qipaidui[104],int *qipaishu,int x)
		{
		int i;
		if((x<0||x>=((*w1).shoupaishu))&&x!=100)
		printf("你的牌呢?!\n");
		else
		{
		switch(((*w1).shoupai)[x].leixing)
		{
		case 101:
		case 102:
		case 103:
		case 201:
		case 202:
		case 203:
		case 204:
		case 205:
		case 206:
		case 207:
		case 208:
		case 209:
		case 210:
		qipaidui[*qipaishu]=((*w1).shoupai)[x];
		for(i=x+1;i<=((*w1).shoupaishu);i++)((*w1).shoupai)[i-1]=((*w1).shoupai)[i];
		((*w1).shoupaishu)--;
		(*qipaishu)++;
		break;
		case 251:
		for(i=1;i>=0;i--)(*w2).pandingpai[i+1]=(*w2).pandingpai[i];
		(*w2).pandingpai[0]=(*w1).shoupai[x];
		for(i=x+1;i<=((*w1).shoupaishu);i++)((*w1).shoupai)[i-1]=((*w1).shoupai)[i];
		((*w1).shoupaishu)--;
		((*w2).pandingshu)++;
		break;
		case 252:
		for(i=1;i>=0;i--)(*w1).pandingpai[i+1]=(*w1).pandingpai[i];
		(*w1).pandingpai[0]=(*w1).shoupai[x];
		for(i=x+1;i<=((*w1).shoupaishu);i++)((*w1).shoupai)[i-1]=((*w1).shoupai)[i];
		((*w1).shoupaishu)--;
		((*w1).pandingshu)++;
		break;
		case 301:
		case 302:
		case 303:
		case 304:
		case 305:
		case 306:
		case 307:
		case 308:
		if((*w1).zhuangbei[0].leixing==-1)((*w1).zhuangbeishu)++;
		else
		{
		qipaidui[*qipaishu]=((*w1).zhuangbei)[0];
		(*qipaishu)++;
		}
		(*w1).zhuangbei[0]=(*w1).shoupai[x];
		for(i=x+1;i<=((*w1).shoupaishu);i++)((*w1).shoupai)[i-1]=((*w1).shoupai)[i];
		((*w1).shoupaishu)--;
		break;
		case 331:
		if((*w1).zhuangbei[1].leixing==-1)((*w1).zhuangbeishu)++;
		else
		{
		qipaidui[*qipaishu]=((*w1).zhuangbei)[1];
		(*qipaishu)++;
		}
		(*w1).zhuangbei[1]=(*w1).shoupai[x];
		for(i=x+1;i<=((*w1).shoupaishu);i++)((*w1).shoupai)[i-1]=((*w1).shoupai)[i];
		((*w1).shoupaishu)--;
		break;
		case 361:
		case 362:
		case 363:
		if((*w1).zhuangbei[2].leixing==-1)((*w1).zhuangbeishu)++;
		else
		{
		qipaidui[*qipaishu]=((*w1).zhuangbei)[2];
		(*qipaishu)++;
		}
		(*w1).zhuangbei[2]=(*w1).shoupai[x];
		for(i=x+1;i<=((*w1).shoupaishu);i++)((*w1).shoupai)[i-1]=((*w1).shoupai)[i];
		((*w1).shoupaishu)--;
		break;
		case 381:
		case 382:
		case 383:
		if((*w1).zhuangbei[3].leixing==-1)((*w1).zhuangbeishu)++;
		else
		{
		qipaidui[*qipaishu]=((*w1).zhuangbei)[3];
		(*qipaishu)++;
		}
		(*w1).zhuangbei[3]=(*w1).shoupai[x];
		for(i=x+1;i<=((*w1).shoupaishu);i++)((*w1).shoupai)[i-1]=((*w1).shoupai)[i];
		((*w1).shoupaishu)--;
		break;
		default:break;
		}
		}
		}
		void Miaoshu(pai p,int juese,int duixiang)
		{
		if(juese==0)printf("电脑");
		else if(juese==1)printf("玩家");
		else printf("角色参数错误!\n");
		if(p.leixing<=300&&p.leixing>100)
		{
		switch(duixiang)
		{
		case -1:printf("打出");break;
		case 0:printf("对电脑使用");break;
		case 1:printf("对玩家使用");break;
		case 99:printf("使用");break;
		case 100:printf("对所有人使用");break;
		default:printf("对象参数错误\n");break;
		}
		}
		else if(p.leixing>=301&&p.leixing<=400)
		printf("装备");
		else printf("你出的是什么东西?\n");
		p.Kanpai();
		if(!juese&&(p.leixing==101||p.leixing==204||p.leixing==205||p.leixing==207||p.leixing==208||p.leixing==209))printf("请响应!\n");
		}
		int Wuxie(pai *p,wujiang*w1,wujiang*w2,pai qipaidui[104],int*qipaishu,int a)
		{
		int x;
		if((*w1).juese)
		{
		printf("是否使用【无懈可击】响应?\n\n");
		for(;;)
		{
		(*w1).Kanshoupai();
		printf("如果要使用【无懈可击】请输入手牌之前编号,不需要请输入“-1”,以回车结束!\n");
		scanf("%d",&x);
		if(x==-1)
		{
		for(x=0;x<((*w2).shoupaishu);x++)
		{
		if((*w2).shoupai[x].leixing==210)
		{
		printf("电脑使用");
		((*w2).shoupai)[x].Kanpai();
		printf("对象是");
		(*p).Kanpai();
		(*p)=((*w2).shoupai)[x];
		qipaidui[*qipaishu]=((*w2).shoupai)[x];
		for(int i=x+1;i<=((*w2).shoupaishu);i++)((*w2).shoupai)[i-1]=((*w2).shoupai)[i];
		((*w2).shoupaishu)--;
		(*qipaishu)++;
		a++;
		break;
		}
		}
		break;
		}
		else if((*w1).shoupai[x].leixing==210)
		{
		printf("玩家使用");
		((*w1).shoupai)[x].Kanpai();
		printf("对象是");
		(*p).Kanpai();
		(*p)=((*w1).shoupai)[x];
		qipaidui[*qipaishu]=((*w1).shoupai)[x];
		for(int i=x+1;i<=((*w1).shoupaishu);i++)((*w1).shoupai)[i-1]=((*w1).shoupai)[i];
		((*w1).shoupaishu)--;
		(*qipaishu)++;
		(*w1).Kanshoupai();
		a++;
		break;
		}
		else printf("你确定你使用的是【无懈可击】?\n");
		}
		}
		else
		{
		printf("是否使用【无懈可击】响应?\n");
		for(;;)
		{
		(*w2).Kanshoupai();
		printf("如果要使用【无懈可击】请输入手牌之前编号,不需要请输入“-1”,以回车结束!\n");
		scanf("%d",&x);
		if(x==-1)break;
		else if((*w2).shoupai[x].leixing==210)
		{
		printf("玩家使用");
		((*w2).shoupai)[x].Kanpai();
		printf("对象是");
		(*p).Kanpai();
		(*p)=((*w2).shoupai)[x];
		qipaidui[*qipaishu]=((*w2).shoupai)[x];
		for(int i=x+1;i<=((*w2).shoupaishu);i++)((*w2).shoupai)[i-1]=((*w2).shoupai)[i];
		((*w2).shoupaishu)--;
		(*qipaishu)++;
		(*w2).Kanshoupai();
		a++;
		break;
		}
		else printf("你确定你使用的是【无懈可击】?\n");
		}
		}
		return a;
		}
		int Qiutao(wujiang*w,pai qipaidui[104],int*qipaishu)
		{
		int x;
		if((*w).juese)
		{
		for(;;)
		{
		printf("如果要使用【桃】请输入手牌之前的编号,不需要请输入“-1”,以回车结束!\n");
		scanf("%d",&x);
		if(x==-1)
		{
		return -1;
		break;
		}
		else if((*w).shoupai[x].leixing==103)
		{
		qipaidui[*qipaishu]=((*w).shoupai)[x];
		for(int i=x+1;i<=((*w).shoupaishu);i++)((*w).shoupai)[i-1]=((*w).shoupai)[i];
		((*w).shoupaishu)--;
		(*qipaishu)++;
		return 0;
		break;
		}
		else printf("你确定你使用的是【桃】?\n");
		}
		}
		else
		{
		for(x=0;x<((*w).shoupaishu);x++)
		{
		if((*w).shoupai[x].leixing==103)
		{
		qipaidui[*qipaishu]=((*w).shoupai)[x];
		for(int i=x+1;i<=((*w).shoupaishu);i++)((*w).shoupai)[i-1]=((*w).shoupai)[i];
		((*w).shoupaishu)--;
		(*qipaishu)++;
		return 0;
		break;
		}
		}
		return -1;
		}
		}
		int Binsi(wujiang*w1,wujiang*w2,pai qipaidui[104],int*qipaishu)
		{
		if(((*w2).tili)>0)return 0;
		else
		{
		int i;
		if((*w1).juese)
		{
		for(;;)
		{
		printf("电脑濒死,是否使用【桃】?\n");
		i=Qiutao(w1,qipaidui,qipaishu);
		if(i==0)((*w2).tili)++;
		if((i==-1)||((*w2).tili>0))break;
		}
		if((*w2).tili>0)return 0;
		else
		{
		for(;;)
		{
		i=Qiutao(w2,qipaidui,qipaishu);
		if(i==0)((*w2).tili)++;
		if((i==-1)||((*w2).tili>0))break;
		}
		if((*w2).tili>0)return 0;
		else return -1;
		}
		}
		else
		{
		for(;;)
		{
		printf("玩家濒死,是否使用【桃】?\n");
		i=Qiutao(w2,qipaidui,qipaishu);
		if(i==0)((*w2).tili)++;
		if((i==-1)||((*w2).tili>0))break;
		}
		if((*w2).tili>0)return 0;
		else return -1;
		}
		}
		}
		int Shan(wujiang*w1,wujiang*w2,pai paidui[104],int*paiduishu,pai qipaidui[104],int*qipaishu)
		{
		int x;
		if((*w2).juese)
		{
		if(((*w2).zhuangbei[1].leixing==331)&&((*w1).zhuangbei[0].leixing!=303))
		{
		for(;;)
		{
		int m;
		printf("是否发动【八卦阵】防具效果?\n0 否\n1 是\n请输入选项之前的编号,以回车结束!\n");
		scanf("%d",&m);
		if(m==1)
		{
		Panding(paidui,paiduishu,qipaidui,qipaishu);
		if(qipaidui[(*qipaishu)-1].huase%2)
		{
		printf("【八卦阵】判定成功!\n");
		return 0;
		}
		}
		else if(m==0)
		{
		printf("【八卦阵】判定失败!\n");
		break;
		}
		else printf("你确定你输入的是“0”或“1”?\n");
		}
		}
		else if(((*w2).zhuangbei[1].leixing==331)&&((*w1).zhuangbei[0].leixing==303))printf("【青釭剑】锁定技被触发!\n");
		for(;;)
		{
		printf("请输入手牌之前的编号,或者输入“-1”放弃打出【闪】,以回车结束!\n");
		scanf("%d",&x);
		if(x==-1)
		{
		return -1;
		break;
		}
		else if((*w2).shoupai[x].leixing==102)
		{
		printf("玩家打出");
		((*w2).shoupai)[x].Kanpai();
		qipaidui[*qipaishu]=((*w2).shoupai)[x];
		for(int i=x+1;i<=((*w2).shoupaishu);i++)((*w2).shoupai)[i-1]=((*w2).shoupai)[i];
		((*w2).shoupaishu)--;
		(*qipaishu)++;
		return 0;
		break;
		}
		else printf("你确定你打出的是【闪】?\n");
		}
		}
		else
		{
		if(((*w2).zhuangbei[1].leixing==331)&&((*w1).zhuangbei[0].leixing!=303))
		{
		Panding(paidui,paiduishu,qipaidui,qipaishu);
		if(qipaidui[(*qipaishu)-1].huase%2)
		{
		printf("【八卦阵】判定成功!\n");
		return 0;
		}
		else printf("【八卦阵】判定失败!\n");
		}
		else if(((*w2).zhuangbei[1].leixing==331)&&((*w1).zhuangbei[0].leixing==303))printf("【青釭剑】锁定技被触发!\n");
		int i;
		for(x=0;x<((*w2).shoupaishu);x++)
		{
		if((*w2).shoupai[x].leixing==102)
		{
		printf("电脑打出");
		((*w2).shoupai)[x].Kanpai();
		qipaidui[*qipaishu]=((*w2).shoupai)[x];
		for(i=x+1;i<=((*w2).shoupaishu);i++)((*w2).shoupai)[i-1]=((*w2).shoupai)[i];
		((*w2).shoupaishu)--;
		(*qipaishu)++;
		return 0;
		break;
		}
		}
		return -1;
		}
		}
		int Sha(wujiang *w1,wujiang*w2,pai paidui[104],int*paiduishu,pai qipaidui[104],int*qipaishu)
		{
		int x;
		if((*w2).juese)
		{
		printf("请打出【闪】响应【杀】!否则你将受到1点伤害!\n");
		x=Shan(w1,w2,paidui,paiduishu,qipaidui,qipaishu);
		if(x==-1)
		{
		int i;
		((*w2).tili)--;
		printf("电脑对玩家造成1点伤害!\n");
		i=Binsi(w1,w2,qipaidui,qipaishu);
		return i;
		}
		else if(x==0&&((*w1).zhuangbei[0].leixing==306))
		{
		int i;
		if(((*w1).shoupaishu)>=2)
		{
		printf("电脑弃掉:\n");
		((*w1).shoupai)[0].Kanpai();
		qipaidui[*qipaishu]=((*w1).shoupai)[0];
		for(i=1;i<=((*w1).shoupaishu);i++)((*w1).shoupai)[i-1]=((*w1).shoupai)[i];
		((*w1).shoupaishu)--;
		(*qipaishu)++;
		((*w1).shoupai)[0].Kanpai();
		qipaidui[*qipaishu]=((*w1).shoupai)[0];
		for(i=1;i<=((*w1).shoupaishu);i++)((*w1).shoupai)[i-1]=((*w1).shoupai)[i];
		((*w1).shoupaishu)--;
		(*qipaishu)++;
		printf("发动【贯石斧】武器效果使【杀】造成伤害!\n");
		((*w2).tili)--;
		i=Binsi(w1,w2,qipaidui,qipaishu);
		return i;
		}
		else return 0;
		}
		else if(x==0&&((*w1).zhuangbei[0].leixing==304))
		{
		int i;
		for(x=0;x<((*w1).shoupaishu);x++)
		{
		if((*w1).shoupai[x].leixing==101)
		{
		printf("电脑发动【青龙偃月刀】效果对玩家使用");
		((*w1).shoupai)[x].Kanpai();
		qipaidui[*qipaishu]=((*w1).shoupai)[x];
		for(i=x+1;i<=((*w1).shoupaishu);i++)((*w1).shoupai)[i-1]=((*w1).shoupai)[i];
		((*w1).shoupaishu)--;
		(*qipaishu)++;
		i=Sha(w1,w2,paidui,paiduishu,qipaidui,qipaishu);
		return i;
		break;
		}
		}
		return 0;
		}
		}
		else
		{
		x=Shan(w1,w2,paidui,paiduishu,qipaidui,qipaishu);
		if(x==-1)
		{
		if((*w1).zhuangbei[0].leixing==308)
		{
		for(;;)
		{
		printf("是否发动【麒麟弓】武器效果?\n0 否\n1 是\n");
		scanf("%d",&x);
		if(x==1)
		{
		if(((*w2).zhuangbei[2].leixing==-1)&&((*w2).zhuangbei[3].leixing==-1))
		{
		printf("电脑根本没有马,射你妹的马啊!\n");
		break;
		}
		else
		{
		for(;;)
		{
		printf("0 ");
		((*w2).zhuangbei[2]).Kanpai();
		printf("1 ");
		((*w2).zhuangbei[3]).Kanpai();
		printf("请选择要弃掉的马,输入之前的编号,以回车结束!\n");
		scanf("%d",&x);
		if((x==0)&&((*w2).zhuangbei[2].leixing!=-1))
		{
		printf("你弃掉了电脑的");
		((*w2).zhuangbei)[2].Kanpai();
		qipaidui[*qipaishu]=((*w2).zhuangbei)[2];
		((*w2).zhuangbeishu)--;
		(*qipaishu)++;
		((*w2).zhuangbei)[2].leixing=-1;
		((*w2).juli[0])++;
		break;
		}
		else if((x==1)&&((*w2).zhuangbei[3].leixing!=-1))
		{
		printf("你弃掉了电脑的");
		((*w2).zhuangbei)[3].Kanpai();
		qipaidui[*qipaishu]=((*w2).zhuangbei)[3];
		((*w2).zhuangbeishu)--;
		(*qipaishu)++;
		((*w2).zhuangbei)[3].leixing=-1;
		((*w1).juli[0])--;
		break;
		}
		else printf("射你妹的马!");
		}
		break;
		}
		}
		else if(x==0)break;
		else printf("键盘上的“0”和“1”被你吃了吗?\n");
		}
		}
		int i;
		((*w2).tili)--;
		printf("玩家对电脑造成1点伤害!\n");
		i=Binsi(w1,w2,qipaidui,qipaishu);
		return i;
		}
		else if(x==0&&((*w1).zhuangbei[0].leixing==306))
		{
		for(;;)
		{
		printf("是否发动【贯石斧】武器效果?\n0 否\n1 是\n");
		scanf("%d",&x);
		if(x==1)
		{
		int i;
		if((*w1).shoupaishu+(*w1).zhuangbeishu<=2)
		{
		printf("你除了【贯石斧】以外连2张牌都没有,发动你妹的效果!\n");
		break;
		}
		else
		{
		printf("请分别弃掉两张牌!\n");
		for(i=0;i<=2;i++)
		{
		for(;;)
		{
		printf("请选择区域:\n0 手牌\n1 装备\n");
		scanf("%d",&x);
		if(x==0&&((*w1).shoupaishu==0))printf("你根本没有手牌,弃你妹啊!\n");
		else if(x==1&&((*w1).zhuangbeishu==1))printf("你根本没有别的装备,弃你妹啊!\n");
		else if(x>=0&&x<=1)break;
		else printf("键盘上的“0”和“1”被你吃了吗?\n");
		}
		if(x==0)
		{
		for(;;)
		{
		(*w1).Kanshoupai();
		printf("弃牌请输入手牌之前的编号,以回车结束!\n");
		scanf("%d",&x);
		if(x>=0&&x<((*w1).shoupaishu))break;
		else printf("弃你妹的手牌!\n");
		}
		printf("你弃掉了");
		((*w1).shoupai)[x].Kanpai();
		qipaidui[*qipaishu]=((*w1).shoupai)[x];
		for(i=x+1;i<=((*w1).shoupaishu);i++)((*w1).shoupai)[i-1]=((*w1).shoupai)[i];
		((*w1).shoupaishu)--;
		(*qipaishu)++;
		}
		else
		{
		for(;;)
		{
		(*w1).Kanzhuangbei();
		printf("请输入装备之前的编号,以回车键结束!\n");
		scanf("%d",&x);
		if((((*w1).zhuangbei[x]).leixing!=-1)&&(x>=0)&&(x<=3))
		{
		printf("你弃掉了");
		((*w1).zhuangbei)[x].Kanpai();
		qipaidui[*qipaishu]=((*w1).zhuangbei)[x];
		((*w1).zhuangbeishu)--;
		(*qipaishu)++;
		((*w1).zhuangbei)[x].leixing=-1;
		break;
		}
		else printf("弃你妹的装备!\n");
		}
		}
		}
		}
		printf("玩家发动【贯石斧】武器效果使【杀】造成伤害!\n");
		((*w2).tili)--;
		i=Binsi(w1,w2,qipaidui,qipaishu);
		return i;
		break;
		}
		else if(x==0)break;
		else printf("键盘上的“0”和“1”被你吃了吗?\n");
		}
		}
		else if(x==0&&((*w1).zhuangbei[0].leixing==304))
		{
		for(;;)
		{
		printf("是否发动【青龙偃月刀】武器效果?\n0 否\n1 是\n");
		scanf("%d",&x);
		if(x==1)
		{
		for(;;)
		{
		printf("请对电脑使用一张【杀】!\n请输入手牌之前的编号,或者输入“-1”放弃出【杀】,以回车结束!\n");
		(*w1).Kanshoupai();
		scanf("%d",&x);
		if(x==-1)
		{
		return 0;
		break;
		}
		else if((*w1).shoupai[x].leixing==101)
		{
		int i;
		printf("玩家对电脑使用");
		((*w1).shoupai)[x].Kanpai();
		qipaidui[*qipaishu]=((*w1).shoupai)[x];
		for(i=x+1;i<=((*w1).shoupaishu);i++)((*w1).shoupai)[i-1]=((*w1).shoupai)[i];
		((*w1).shoupaishu)--;
		(*qipaishu)++;
		i=Sha(w1,w2,paidui,paiduishu,qipaidui,qipaishu);
		return i;
		break;
		}
		else printf("你确定你打出的是【杀】?\n");
		}
		}
		else if(x==0)
		{
		return 0;
		break;
		}
		else printf("你确定你输入的是“0”或“1”?\n");
		}
		}
		else return 0;
		}
		return 0;
		}
		void Tao(wujiang*w1)
		{
		((*w1).tili)++;
		if((*w1).juese)printf("玩家");
		else printf("电脑");
		printf("恢复了1点体力!\n");
		if(((*w1).tili)>((*w1).tilishangxian))printf("你被撑死了!\n");
		}
		void Chai(wujiang*w1,wujiang*w2,pai qipaidui[104],int*qipaishu)
		{
		int i,x,y;
		if((*w1).juese)
		{
		for(;;)
		{
		if((*w2).shoupaishu+(*w2).zhuangbeishu+(*w2).pandingshu==0)
		{
		printf("对方空城,拆你妹啊!\n");
		break;
		}
		else
		{
		printf("请选择想拆的区域,输入选项之前的编号,以回车结束!\n0 手牌\n1 装备区\n2 判定区\n");
		scanf("%d",&x);
		if(x==0&&((*w2).shoupaishu==0))printf("你拆掉了一张空气!\n");
		else if(x==1&&((*w2).zhuangbeishu==0))printf("你拆掉了一张空气!\n");
		else if(x==2&&((*w2).pandingshu==0))printf("你拆掉了一张空气!\n");
		else if(x>=0&&x<=2)break;
		else printf("你拆掉了太空区里的一张牌!\n");
		}
		}
		switch(x)
		{
		case 0:
		srand((unsigned)time(NULL));
		y=rand()%((*w2).shoupaishu);
		printf("你弃掉了电脑的");
		((*w2).shoupai)[y].Kanpai();
		qipaidui[*qipaishu]=((*w2).shoupai)[y];
		for(i=y+1;i<=((*w2).shoupaishu);i++)((*w2).shoupai)[i-1]=((*w2).shoupai)[i];
		((*w2).shoupaishu)--;
		(*qipaishu)++;
		break;
		case 1:
		for(;;)
		{
		(*w2).Kanzhuangbei();
		printf("请输入装备之前的编号,以回车键结束!\n");
		scanf("%d",&y);
		if((((*w2).zhuangbei[y]).leixing!=-1)&&(y>=0)&&(y<=3))
		{
		printf("你弃掉了电脑的");
		((*w2).zhuangbei)[y].Kanpai();
		qipaidui[*qipaishu]=((*w2).zhuangbei)[y];
		((*w2).zhuangbeishu)--;
		(*qipaishu)++;
		((*w2).zhuangbei)[y].leixing=-1;
		if(!y)((*w2).zhuangbei)[y].changdu=1;
		else if(y==2)((*w2).juli[0])++;
		else if(y==3)((*w1).juli[0])--;
		break;
		}
		else printf("你弃掉了一张空气!\n");
		}
		break;
		case 2:
		for(;;)
		{
		(*w2).Kanpandingpai();
		printf("请输入判定牌之前的编号,以回车键结束!\n");
		scanf("%d",&y);
		if((*w2).pandingpai[y].leixing!=-1)
		{
		printf("你弃掉了电脑的");
		((*w2).pandingpai)[y].Kanpai();
		qipaidui[*qipaishu]=((*w2).pandingpai)[y];
		((*w2).pandingshu)--;
		(*qipaishu)++;
		((*w2).pandingpai)[y].leixing=-1;
		break;
		}
		else printf("你弃掉了一张空气!\n");
		}
		break;
		default:break;
		}
		}
		else
		{
		if((*w2).zhuangbeishu)
		{
		if((*w2).zhuangbei[1].leixing!=-1)
		{
		printf("电脑弃掉了玩家的");
		((*w2).zhuangbei)[1].Kanpai();
		qipaidui[*qipaishu]=((*w2).zhuangbei)[1];
		((*w2).zhuangbeishu)--;
		(*qipaishu)++;
		((*w2).zhuangbei)[1].leixing=-1;
		}
		else if((*w2).zhuangbei[3].leixing!=-1)
		{
		printf("电脑弃掉了玩家的");
		((*w2).zhuangbei)[3].Kanpai();
		qipaidui[*qipaishu]=((*w2).zhuangbei)[3];
		((*w2).zhuangbeishu)--;
		(*qipaishu)++;
		((*w2).zhuangbei)[3].leixing=-1;
		((*w1).juli[0])--;
		}
		else if((*w2).zhuangbei[0].leixing!=-1)
		{
		printf("电脑弃掉了玩家的");
		((*w2).zhuangbei)[0].Kanpai();
		qipaidui[*qipaishu]=((*w2).zhuangbei)[0];
		((*w2).zhuangbeishu)--;
		(*qipaishu)++;
		((*w2).zhuangbei)[0].leixing=-1;
		((*w2).zhuangbei)[0].changdu=1;
		}
		else
		{
		printf("电脑弃掉了玩家的");
		((*w2).zhuangbei)[2].Kanpai();
		qipaidui[*qipaishu]=((*w2).zhuangbei)[2];
		((*w2).zhuangbeishu)--;
		(*qipaishu)++;
		((*w2).zhuangbei)[2].leixing=-1;
		((*w2).juli[0])++;
		}
		}
		else
		{
		srand((unsigned)time(NULL));
		y=rand()%((*w2).shoupaishu);
		printf("电脑弃掉了玩家的手牌");
		((*w2).shoupai)[y].Kanpai();
		qipaidui[*qipaishu]=((*w2).shoupai)[y];
		for(i=y+1;i<=((*w2).shoupaishu);i++)((*w2).shoupai)[i-1]=((*w2).shoupai)[i];
		((*w2).shoupaishu)--;
		(*qipaishu)++;
		}
		}
		}
		void Qian(wujiang *w1,wujiang *w2)
		{
		int i,x,y;
		if((*w1).juese)
		{
		for(;;)
		{
		if((*w2).shoupaishu+(*w2).zhuangbeishu+(*w2).pandingshu==0)
		{
		printf("对方空城啦!你牵走了一张寂寞!\n");
		break;
		}
		else
		{
		printf("请选择想牵的区域,输入选项之前的编号,以回车结束!\n0 手牌\n1 装备区\n2 判定区\n");
		scanf("%d",&x);
		if(x==0&&((*w2).shoupaishu==0))printf("你牵走了一张空气!\n");
		else if(x==1&&((*w2).zhuangbeishu==0))printf("你牵走了一张空气!\n");
		else if(x==2&&((*w2).pandingshu==0))printf("你牵走了一张空气!\n");
		else if(x>=0&&x<=2)break;
		else printf("你牵走了太空区里的一张牌!\n");
		}
		}
		switch(x)
		{
		case 0:
		srand((unsigned)time(NULL));
		y=rand()%((*w2).shoupaishu);
		printf("你牵走了电脑的");
		((*w2).shoupai)[y].Kanpai();
		(*w1).shoupai[(*w1).shoupaishu]=((*w2).shoupai)[y];
		for(i=y+1;i<=((*w2).shoupaishu);i++)((*w2).shoupai)[i-1]=((*w2).shoupai)[i];
		((*w2).shoupaishu)--;
		((*w1).shoupaishu)++;
		break;
		case 1:
		for(;;)
		{
		(*w2).Kanzhuangbei();
		printf("请输入装备之前的编号,以回车键结束!\n");
		scanf("%d",&y);
		if((((*w2).zhuangbei[y]).leixing!=-1)&&(y>=0)&&(y<=3))
		{
		printf("你牵走了电脑的");
		((*w2).zhuangbei)[y].Kanpai();
		(*w1).shoupai[(*w1).shoupaishu]=((*w2).zhuangbei)[y];
		((*w2).zhuangbeishu)--;
		((*w1).shoupaishu)++;
		((*w2).zhuangbei)[y].leixing=-1;
		if(!y)((*w2).zhuangbei[y]).changdu=1;
		else if(y==2)((*w2).juli[0])++;
		else if(y==3)((*w1).juli[0])--;
		break;
		}
		else printf("你弃掉了一张空气!\n");
		}
		break;
		case 2:
		for(;;)
		{
		(*w2).Kanpandingpai();
		printf("请输入判定牌之前的编号,以回车键结束!\n");
		scanf("%d",&y);
		if((*w2).pandingpai[y].leixing!=-1)
		{
		printf("你牵走了电脑的");
		((*w2).pandingpai)[y].Kanpai();
		(*w1).shoupai[(*w1).shoupaishu]=((*w2).pandingpai)[y];
		((*w2).pandingshu)--;
		((*w1).shoupaishu)++;
		((*w2).pandingpai)[y].leixing=-1;
		break;
		}
		else printf("你牵走了一张空气!\n");
		}
		break;
		default:break;
		}
		}
		else
		{
		if((*w2).zhuangbeishu)
		{
		if((*w2).zhuangbei[1].leixing!=-1)
		{
		printf("电脑牵走了玩家的");
		((*w2).zhuangbei)[1].Kanpai();
		(*w1).shoupai[(*w1).shoupaishu]=((*w2).zhuangbei)[1];
		((*w2).zhuangbeishu)--;
		((*w1).shoupaishu)++;
		((*w2).zhuangbei)[1].leixing=-1;
		}
		else if((*w2).zhuangbei[3].leixing!=-1)
		{
		printf("电脑牵走了玩家的");
		((*w2).zhuangbei)[3].Kanpai();
		(*w1).shoupai[(*w1).shoupaishu]=((*w2).zhuangbei)[3];
		((*w2).zhuangbeishu)--;
		((*w1).shoupaishu)++;
		((*w2).zhuangbei)[3].leixing=-1;
		((*w1).juli[0])--;
		}
		else if((*w2).zhuangbei[0].leixing!=-1)
		{
		printf("电脑牵走了玩家的");
		((*w2).zhuangbei)[0].Kanpai();
		(*w1).shoupai[(*w1).shoupaishu]=((*w2).zhuangbei)[0];
		((*w2).zhuangbeishu)--;
		((*w1).shoupaishu)++;
		((*w2).zhuangbei)[0].leixing=-1;
		((*w2).zhuangbei)[0].changdu=1;
		}
		else
		{
		printf("电脑牵走了玩家的");
		((*w2).zhuangbei)[2].Kanpai();
		(*w1).shoupai[(*w1).shoupaishu]=((*w2).zhuangbei)[2];
		((*w2).zhuangbeishu)--;
		((*w1).shoupaishu)++;
		((*w2).zhuangbei)[2].leixing=-1;
		((*w2).juli[0])--;
		}
		}
		else
		{
		srand((unsigned)time(NULL));
		y=rand()%((*w2).shoupaishu);
		printf("电脑牵走了玩家的手牌");
		((*w2).shoupai)[y].Kanpai();
		(*w1).shoupai[(*w1).shoupaishu]=((*w2).shoupai)[y];
		for(i=y+1;i<=((*w2).shoupaishu);i++)((*w2).shoupai)[i-1]=((*w2).shoupai)[i];
		((*w2).shoupaishu)--;
		((*w1).shoupaishu)++;
		}
		}
		}
		void Wuzhong(wujiang*w1,pai A[104],int *x,pai B[104],int*y)
		{
		Mopai(&((*w1).shoupaishu),(*w1).shoupai,A,x,B,y,(*w1).juese);
		}
		int Juedou(wujiang*w1,wujiang*w2,pai qipaidui[104],int*qipaishu)
		{
		int i,j,x;
		if((*w1).juese)
		{
		for(;;)
		{
		j=0;
		for(x=0;x<((*w2).shoupaishu);x++)
		{
		if((*w2).shoupai[x].leixing==101)
		{
		printf("电脑打出");
		((*w2).shoupai)[x].Kanpai();
		qipaidui[*qipaishu]=((*w2).shoupai)[x];
		for(int i=x+1;i<=((*w2).shoupaishu);i++)((*w2).shoupai)[i-1]=((*w2).shoupai)[i];
		((*w2).shoupaishu)--;
		(*qipaishu)++;
		j=1;
		break;
		}
		}
		if(!j)
		{
		printf("玩家对电脑造成1点伤害!\n");
		((*w2).tili)--;
		i=Binsi(w1,w2,qipaidui,qipaishu);
		return i;
		break;
		}
		j=0;
		for(;;)
		{
		printf("请打出一张【杀】响应【决斗】,否则你将受到1点伤害!\n请输入手牌之前的编号,或者输入“-1”放弃出【杀】,以回车结束!\n");
		if(((*w1).zhuangbei[0].leixing==305))printf("如果想发动【丈八蛇矛】效果,请输入“100”,以回车结束!\n");
		(*w1).Kanshoupai();
		scanf("%d",&x);
		if(x==-1)
		{
		int i;
		((*w1).tili)--;
		printf("电脑对玩家造成1点伤害!\n");
		i=Binsi(w2,w1,qipaidui,qipaishu);
		return i;
		break;
		}
		else if(((*w1).zhuangbei[0].leixing==305)&&x==100)
		{
		pai p=Zhangba(w1,qipaidui,qipaishu);
		p.paifu=-1;
		printf("打出!\n");
		j=1;
		break;
		}
		else if((*w1).shoupai[x].leixing==101)
		{
		printf("玩家打出");
		((*w1).shoupai)[x].Kanpai();
		qipaidui[*qipaishu]=((*w1).shoupai)[x];
		for(i=x+1;i<=((*w1).shoupaishu);i++)((*w1).shoupai)[i-1]=((*w1).shoupai)[i];
		((*w1).shoupaishu)--;
		(*qipaishu)++;
		j=1;
		break;
		}
		else printf("你确定你打出的是【杀】?\n");
		}
		}
		}
		else
		{
		for(;;)
		{
		j=0;
		for(;;)
		{
		printf("请打出一张【杀】响应【决斗】,否则你将受到1点伤害!\n请输入手牌之前的编号,或者输入“-1”放弃出【杀】,以回车结束!\n");
		if(((*w1).zhuangbei[0].leixing==305))printf("如果想发动【丈八蛇矛】效果,请输入“100”,以回车结束!\n");
		(*w2).Kanshoupai();
		scanf("%d",&x);
		if(x==-1)
		{
		int i;
		((*w2).tili)--;
		printf("电脑对玩家造成1点伤害!\n");
		i=Binsi(w1,w2,qipaidui,qipaishu);
		return i;
		break;
		}
		else if(((*w2).zhuangbei[0].leixing==305)&&x==100)
		{
		pai p=Zhangba(w2,qipaidui,qipaishu);
		p.paifu=-1;
		printf("打出!\n");
		j=1;
		break;
		}
		else if((*w2).shoupai[x].leixing==101)
		{
		printf("玩家打出");
		((*w2).shoupai)[x].Kanpai();
		qipaidui[*qipaishu]=((*w2).shoupai)[x];
		for(i=x+1;i<=((*w2).shoupaishu);i++)((*w2).shoupai)[i-1]=((*w2).shoupai)[i];
		((*w2).shoupaishu)--;
		(*qipaishu)++;
		j=1;
		break;
		}
		else printf("你确定你打出的是【杀】?\n");
		}
		j=0;
		for(x=0;x<((*w1).shoupaishu);x++)
		{
		if((*w1).shoupai[x].leixing==101)
		{
		printf("电脑打出");
		((*w1).shoupai)[x].Kanpai();
		qipaidui[*qipaishu]=((*w1).shoupai)[x];
		for(int i=x+1;i<=((*w1).shoupaishu);i++)((*w1).shoupai)[i-1]=((*w1).shoupai)[i];
		((*w1).shoupaishu)--;
		(*qipaishu)++;
		j=1;
		break;
		}
		}
		if(!j)
		{
		printf("玩家对电脑造成1点伤害!\n");
		((*w2).tili)--;
		i=Binsi(w2,w1,qipaidui,qipaishu);
		return i;
		break;
		}
		}
		}
		}
		int Jiedao(wujiang*w1,wujiang*w2,pai paidui[104],int*paiduishu,pai qipaidui[104],int*qipaishu)
		{
		int i,j=0,x;
		if((*w1).juese)
		{
		for(x=0;x<((*w2).shoupaishu);x++)
		{
		if((*w2).shoupai[x].leixing==101)
		{
		printf("电脑对玩家使用");
		((*w2).shoupai)[x].Kanpai();
		qipaidui[*qipaishu]=((*w2).shoupai)[x];
		for(int i=x+1;i<=((*w2).shoupaishu);i++)((*w2).shoupai)[i-1]=((*w2).shoupai)[i];
		((*w2).shoupaishu)--;
		(*qipaishu)++;
		j=1;
		break;
		}
		}
		if(j)
		{
		i=Sha(w2,w1,paidui,paiduishu,qipaidui,qipaishu);
		return i;
		printf("玩家当前体力值:%d/%d\n电脑当前体力值:%d/%d\n",(*w1).tili,(*w1).tilishangxian,(*w2).tili,(*w2).tilishangxian);
		}
		else
		{
		printf("电脑放弃使用【杀】,玩家获得电脑的武器");
		(*w2).zhuangbei[0].Kanpai();
		(*w1).shoupai[(*w1).shoupaishu]=((*w2).zhuangbei)[0];
		((*w2).zhuangbeishu)--;
		((*w1).shoupaishu)++;
		((*w2).zhuangbei)[0].leixing=-1;
		((*w2).zhuangbei)[0].changdu=1;
		(*w1).Kanshoupai();
		return 0;
		}
		}
		else
		{
		for(;;)
		{
		printf("请对电脑使用一张【杀】,否则电脑将获得你的武器!\n请输入手牌之前的编号,或者输入“-1”放弃出【杀】,以回车结束!\n");
		if(((*w2).zhuangbei[0].leixing==305))printf("如果想发动【丈八蛇矛】效果,请输入“100”,以回车结束!\n");
		(*w2).Kanshoupai();
		scanf("%d",&x);
		if(x==-1)break;
		else if(((*w2).zhuangbei[0].leixing==305)&&x==100)
		{
		pai p=Zhangba(w2,qipaidui,qipaishu);
		p.paifu=-1;
		printf("使用!\n");
		j=1;
		break;
		}
		else if((*w2).shoupai[x].leixing==101)
		{
		printf("玩家对电脑使用");
		((*w2).shoupai)[x].Kanpai();
		qipaidui[*qipaishu]=((*w2).shoupai)[x];
		for(i=x+1;i<=((*w2).shoupaishu);i++)((*w2).shoupai)[i-1]=((*w2).shoupai)[i];
		((*w2).shoupaishu)--;
		(*qipaishu)++;
		j=1;
		break;
		}
		else printf("你确定你使用的是【杀】?\n");
		}
		if(j)
		{
		i=Sha(w2,w1,paidui,paiduishu,qipaidui,qipaishu);
		return i;
		printf("玩家当前体力值:%d/%d\n电脑当前体力值:%d/%d\n",(*w2).tili,(*w2).tilishangxian,(*w1).tili,(*w1).tilishangxian);
		}
		else
		{
		printf("玩家放弃使用【杀】,电脑获得玩家的武器");
		((*w2).zhuangbei)[0].Kanpai();
		(*w1).shoupai[(*w1).shoupaishu]=((*w2).zhuangbei)[0];
		((*w2).zhuangbeishu)--;
		((*w1).shoupaishu)++;
		((*w2).zhuangbei)[0].leixing=-1;
		((*w2).zhuangbei)[0].changdu=1;
		return 0;
		}
		}
		}
		void Taoyuan(wujiang*w)
		{
		if((*w).tili<(*w).tilishangxian)
		{
		((*w).tili)++;
		if((*w).juese)printf("玩家");
		else printf("电脑");
		printf("恢复1点体力!\n");
		}
		}
		void Kaipai(pai paidui[104],int* paiduishu,int renshu,pai wugu[10])
		{
		int i;
		printf("五谷丰登开牌:\n");
		for(i=1;i<=renshu;i++)
		{
		wugu[i-1]=paidui[104-(*paiduishu)];
		(*paiduishu)--;
		printf("%d ",i-1);
		wugu[i-1].Kanpai();
		}
		}
		void Qupai(pai wugu[10],wujiang*w)
		{
		int i,x;
		printf("五谷丰登开牌:\n");
		for(i=0;(wugu[i].leixing)!=-1;i++)
		{
		printf("%d ",i);
		wugu[i].Kanpai();
		}
		if((*w).juese)
		

你可能感兴趣的:(实用,C++常识)