• 个人简介

    福利

    这是1.1版本,想要1.2~2.0版本更多就去阅读 奖励机制(https://xwjedu.cn/discuss/689d41c27b67228323190fc8#1755136450032) & 辩论(https://xwjedu.cn/discuss/689ab57a228a2632dff6e0ce#1754969466073)吧!

    #include<bits/stdc++.h>
    #include<windows.h>
    int again,cho,num,about,fla=0,strc;
    int three=0,five=0,ten=0,dmon,dumo=0,paim=0;
    long long money=0;long shop[4],pric[5]={0,30,60,90};
    int main()
    {
    srand(time(NULL));
    int b,p,x,c,d,e=0,f=0,g,h=0,i=1,j,l,m,n=5,o=0,flag=0,t1=0,t2=0,last=0;
    int flog=0,tans=0,change=0,choo,ice,tangc=0,train,goch=0,game=1,choos=1;
    if(paim!=0&&dumo!=0)
    {
     printf("你在赌场投注了赌金\n");Sleep(1000);
     switch(paim)
     {
      case 1:printf("恭喜恭喜!获得了100%的赌金!获得了%d元\n",dumo*2);money+=dumo*2;break;
      case 2:printf("祝贺祝贺!获得了50%的赌金!获得了%d元\n",dumo*1.5);money+=dumo*1.5;break;
      case 3:printf("很遗憾!获得了-50%的赌金!挽回了%d元\n",dumo*0.5);money+=dumo*0.5;break;
      default:printf("继续加油吧,赌金就被赌场收下了\n"); 
     }
     printf("\n");
     Sleep(3000);
     dumo=0;paim=0;
    }
    if(three==3) {
     printf("恭喜三连胜!\n");
     Sleep(1000);
     printf("我们为你准备了丰厚的奖品:150元,复活卡3张,冰冻卡2张,无敌卡1张\n\n");
     money+=150,shop[1]+=3,shop[2]+=2,shop[3]+=1;
     three=0;Sleep(3000);
    }
    if(five==5) {
     printf("恭喜五连胜!\n");
     Sleep(1000);
     printf("我们为你准备了丰厚的奖品:300元,复活卡6张,冰冻卡4张,无敌卡3张\n\n");
     money+=300,shop[1]+=6,shop[2]+=4,shop[3]+=3;
     five=0;Sleep(3000);
    }
    if(ten==10) {
     printf("恭喜十连胜!\n");
     Sleep(1000);
     printf("我们为你准备了丰厚的奖品:1000元,复活卡15张,冰冻卡12张,无敌卡10张\n\n");
     money+=1000,shop[1]+=15,shop[2]+=12,shop[3]+=10;
     ten=0;Sleep(3000);
    }
    printf("按1->开始游戏,按2->商店,按3->赌场,按4->规则,按5->关于,按0->退出\n");
    scanf("%d",&strc);
    if(strc>5) {
     printf("请不要乱来!\n\n");
     Sleep(1000);return main();
    }
    if(strc==0) return 0;
    if(strc==2) {
     printf("---------------------------------------------\n杀手商店---");
     printf("您现在有%d元\n",money);
     printf("复活卡30一张,您现在拥有%d张(购买:按1)\n",shop[1]);
     printf("冰冻卡60一张,您现在拥有%d张(购买:按2)\n",shop[2]);
     printf("无敌卡90一张,您现在拥有%d张(购买:按3)\n(返回主页:按4)\n",shop[3]);
     scanf("%d",&cho);
     if(cho==4) {
      printf("---------------------------------------------\n\n");
      return main();
     }
     printf("请输入购买数量:");
     scanf("%d",&train);
     if(money>=pric[cho]*train) {
      money-=pric[cho]*train;
      shop[cho]+=train;
      printf("购买成功,道具已开始生效!\n---------------------------------------------\n\n");
      return main();
     }
     else {
      printf("钱不够了!\n---------------------------------------------\n\n");
      return main();
     }
    }
    if(strc==3) {
     printf("---------------------------------------------\n欢迎来到J神赌场!\n");
     Sleep(1000);
     DC:printf("按1开始投注,按2观看规则,按3退出\n");
     scanf("%d",&dmon);
     if(dmon==1) {
      Sleep(1000);printf("请确认看了规则(没看规则的在下面输入0)!\n");
      Sleep(1000);printf("请输入赌金(元):");
      scanf("%d",&dumo);
      if(dumo!=0&&dumo<=money) {
       printf("投注成功!\n---------------------------------------------\n\n");
       money-=dumo;return main();
      }
      if(dumo>money) {
       printf("钱不够了!\n\n");
       dumo=0;
       goto DC;
      }
     }
     if(dmon!=3) {
      Sleep(1000);
      printf("投注后第一局:\n");
      printf("第一名:获得赌金的100%\n");
      printf("第二名:获得赌金的50%\n");
      printf("第三名:获得赌金的-50%\n");
      printf("第四名/第五名:赌金就被赌场收下了\n");
      printf("\n");goto DC;
     }
     printf("---------------------------------------------\n\n");
     return main(); 
    }
    if(strc==4) {
     Sleep(1000);printf("\n复活卡可死后多加一条命,单局只能使用一次,决斗时无法生效\n");
     Sleep(1000);printf("冰冻卡可冰冻指定杀手二回合,死后可随机诅咒,单局只能使用一次\n");
     Sleep(1000);printf("无敌卡可开局无敌三回合\n");
     Sleep(1000);printf("其他规则参见CSDN: ShineEternal 的博客\n");
     Sleep(1000);printf("10秒后返回主页\n\n");
     Sleep(10000);return main();
    }
    if(strc==5) {
     printf("---------------------------------------------\n游戏信息\n");
     printf("游戏版本:1.1.1 更新信息按1;\n");
     printf("原创: CSDN: ShineEternal ,更新: 51CTO: Jeffrey2020\n");
     printf("支持作者请按2,喷作者请按3,返回主页请按4;\n");
     scanf("%d",&about);
     switch(about)
     {
      case 1:printf("\n1.1.2版本:\n更新时间:暂不定,让我好好过个生日吧\n更新目标:1.打定药水草稿\n\t 2.开通活动专栏\n\t 3.修复其他bug");break;
      case 2:printf("爱你哟,么么哒!");if(fla==0) money+=60,fla=1;break;
      case 3:printf("我记住你了");Sleep(2000);printf("\n后会无期!");return 0;break;
     }
     printf("\n---------------------------------------------\n\n");
     return main();
    }
    printf("\n选择你的杀手等级(1-5)\n");
    scanf("%d",&b);
    int a[6]={0,1,2,3,4,5},k[10]={0};
    AA:while(n!=1)
    {
     printf("\n");
        if(game==1&&i==1&&shop[3]>=1) {
         printf("是否启用无敌卡?是按0,否按1\n");
         scanf("%d",&choos); 
         if(choos==0) {
          Sleep(1000);
          printf("启用成功!\n");
          shop[3]--;
         }
         printf("\n");
     } 
     if(n==2&&last==0) {
         Sleep(1000);
         printf("决斗时刻!\n");
         for(int las=1;las<=5;++las) 
         {
          if(t1==0&&a[las]!=0) t1=las;
          else if(a[las]!=0&&t1!=0) t2=las;
      }
      Sleep(1000);
      printf("%d号与%d号冠军之争!\n\n",t1,t2);
      last=1;
     }
     if(i==1&&change==0) 
        {
            Sleep (1000);
            printf("存活者:%d %d %d %d %d\n\n",a[1],a[2],a[3],a[4],a[5]);
        }
        if(i==6) i=1,game++;
        if(a[i]==0)
        {
            i++;
            continue;
        }
        Sleep(1000);
        if(tangc==0) printf("轮到%d号\n",i);
            else tangc=0;
        if(i==b)
        {
            Sleep(1000);
            FF:if(goch==1) Sleep(1000);
      printf("选择你要攻击的目标:%d %d %d %d %d",a[1],a[2],a[3],a[4],a[5]);
            if(shop[2]>=1&&change==0)
             printf(" 若要冰冻敌人请按6");
      printf("\n"); 
            scanf("%d",&choo);
            if(choo==6&&shop[2]>=1)
            {
             EE:Sleep(1000);
       printf("选择你要冰冻的目标:%d %d %d %d %d\n",a[1],a[2],a[3],a[4],a[5]);
             scanf("%d",&ice);
             if(a[ice]==0||ice==b||ice>5) {
              printf("你无法冰冻该杀手!\n");
        goto EE;
       }
                 else printf("冰冻成功!\n"),change=1,tangc=1;
             shop[2]--;
             goto AA;
      }
          else {
           p=choo;
           if(a[p]==0||p==b||p>5) {
        printf("你无法选择该杀手\n");
        goch=1;goto FF;
        } 
       }
        }
            else 
            {
             do
                p=rand()%5+1;
                while(p!=i);
                while(a[p]==0||p==i) p=rand()%5+1;
            }
        if(i==ice&&tans<=1) {
         Sleep(1000);
      printf("%d号被冰冻,跳过\n\n",ice);
      i++;tans++;
      goto AA;
     }
        Sleep(1000);
        printf("%d号选择了%d号\n",i,p);
        Sleep(1000);
        printf("%d号掷出了%d\n",i,c=rand()%6+1);
        if(i>=c)
        {
            if(p==b&&choos==0&&game<=3) {
             Sleep(1000);
             printf("%d号无法杀死%d号,因为%d号开启了无敌卡\n\n",i,b,b);
             i++;goto AA;
      }
      a[p]=0;
            Sleep(1000);
            printf("%d号杀死了%d号\n\n",i,p);
            n--;
        }
            else {Sleep(1000); printf("%d号没有杀死目标\n\n",i);}
        if(i==5&&a[p]==0)
        {
            if(rand()%3==1||rand()%3==2)
            {
                if(p==1&&f<=2)
                {
                    Sleep(1000); printf("5号无视1号复活权\n");
                    Sleep(800); printf("直接将其杀死\n\n");
                    f=3;
                }
                if(p==2&&h==0)
                {
                    Sleep(1000); printf("5号无视2号复活权\n");
                    Sleep(800); printf("直接将其杀死\n\n");
                    h=1;
                }
                if(p==3&&o==0)
                {
                    Sleep(1000); printf("5号无视3号复活权\n");
                    Sleep(800); printf("直接将其杀死\n\n");
                    o=1;
                }
            }
        }
        DD:if(a[1]==0)
        {
            if(b==1&&flag==1) goto AA;
            if(f<=2)
            {
                Sleep(1000);
                printf("1号使用复活权\n");
                f++; n++; a[1]=1;
                if(f==1)
                {
                    do g=rand()%5+1;
                    while(a[g]==0||g==1);
                    Sleep(1000); printf("并随机诅咒了%d号\n",g);
        if(g==b&&choos==0&&game<=3) {
                     Sleep(1000);
                     printf("%d号开启了无敌卡,免疫诅咒\n\n",b);
                     i++;goto AA;
              } 
                    Sleep(1000); printf("%d号死了\n\n",g);
                    a[g]=0; n--;
                }
            }      
                else a[1]=0;
        }
        if(a[2]==0&&h==0)
        {
            if(b==2&&flag==1) goto AA;
            Sleep(1000);
            printf("2号使用复活权\n");
            n++;
            a[2]=2;
            do m=rand()%5+1;
            while(a[m]==0||m==2);
            Sleep(1000); printf("并随机诅咒了%d号\n",m);
            if(rand()%2==1)
            {
          if(m==b&&choos==0&&game<=3) {
                 Sleep(1000);
                 printf("%d号开启了无敌卡,免疫诅咒\n\n",b);
                 h=1;i++;goto AA;
          }  
                a[m]=0; 
                Sleep(1000); printf("%d号死了\n\n",m);
                n--;
            } 
                else 
                {
                    Sleep(1000); printf("但他没死\n\n");
                } 
            h=1;goto DD;
        }
        if(a[3]==0&&o==0)
        {
            if(b==3&&flag==1) goto AA;
            Sleep(1000); printf("3号使用复活权\n\n"); a[3]=3; o++; n++;
        }
        if(i==4&&a[p]==0)
        {
            if(n==1) goto GG;
                else
                {
                    Sleep(1000); printf("4号使用再次攻击权\n");
                    flog=1;
                    if(p==b) goto GG;
                        else goto AA;
                }
        }
        if(i==4&&a[p]!=0) flog=0;
        GG:if(a[b]==0&&e==0)
        {
            if(n==1) {
                num=1;
             goto CC;
            } 
      if(shop[1]>=1&&flag==0) {
             Sleep(1000);
             printf("%d号使用复活卡继续游戏\n",b);
             flag=1;
             a[b]=b;
             shop[1]--;
             if(flog==1) {
              Sleep(1000);
              printf("4号再次攻击权被抵消\n");
              flog=0;
       }
       printf("\n");
             i++;n++;goto AA; 
            }
            printf("你死了,是否继续?是按0,否按1\n");
            scanf("%d",&x);
            if(x==1) {
             num=n;
             goto BB;
            }
            else if(x==0) e=1,num=n;
        }
        if(flog==0) i++;
            else flog=0;
    }
    if(num==0) num++;
    CC:for(j=1;j<=5;j++) 
        if(a[j]!=0) d=j;
    Sleep(800);
    printf("%d号赢了",d);
    if(d==b) {
     printf("\n恭喜你第1名!赢得30元\n"),money+=30;
     three++,five++,ten++,paim=1;
    }
        else {
         BB:Sleep(1000);
      printf("\n结算:你的成绩为第%d名 奖励:",num+1);
         switch(num)
         {
          case 1:printf("20元\n");money+=20;paim=2;break;
          case 2:printf("10元\n");money+=10;paim=3;break;
          case 3:printf("5元\n");money+=5;paim=4;break;
          case 4:printf("无\n");paim=5;break;
          default:printf("(电脑出现未知现象,发生了什么?这是一个bug,待修复)\n"); 
         }
         three=0,five=0,ten=0;
     }
        printf("游戏结束\n\n是否重新一局?是按0,否按1,退出钱将清零\n");
        scanf("%d",&again); 
        if(again==0) {
         printf("\n\n");
         return main(); 
        }
        if(again==1) return 0;
    }
    
  • 通过的题目

  • 最近活动

题目标签

GESP二级
13
1
8
数据结构
8
算法
5
队列
4
GESP
3
一本通编程启蒙
3
2
链表
2
广搜
2
二分算法
2
二分答案
2
结构体
1
排序
1
GESPc++二级
1
字符串
1
GESP(二级)
1
Python
1
贪心
1
双指针
1