葬礼昨天 发表于 2015-12-12 16:19

【原创源码】C语言 一个喝啤酒小游戏的编程实现(菜鸟级)

本帖最后由 葬礼昨天 于 2017-10-18 15:32 编辑

#include<stdio.h>

int main()
{
      int i, btle=0, tap=0, num, n, iTemp;            //btle是瓶子,tap是瓶盖(忘了瓶盖是哪个单词了)。。

      printf("please input the money:\n");
      scanf("%d", &n);
      
      num = n/2;
      btle = n/2;
      tap = n/2;
      n /= 2;
while((btle>=2) || (tap>=4))
      {
      
                        if(btle>=2)
                        {
                              if(0==btle%2)
                              {
                                        num += btle/2;
                                        tap += btle/2;
                                        btle /= 2;
                              }
                              else if(1==btle%2)
                              {
                                        btle--;
                                        num += btle/2;
                                        tap += btle/2;
                                        btle /= 2;
                                        btle++;
                              }
                        }
                        if(tap>=4)
                        {
                              if(0==tap%4)
                              {
                                        num += tap/4;
                                        btle += tap/4;
                                        tap /=4;
                              }
                              else if(tap%4)
                              {
                                        iTemp = tap%4;
                                        num += tap/4;
                                        btle += tap/4;
                                        tap /=4;
                                        tap += iTemp;
                              }
                        }
               
      }
      printf("you will drink %d bottles beer!\n", num);

      return 0;
}


在骑去百科上看到的,就编程实现了下,虽然我知道这个程序真的很简单,但还是很高兴能编出来,小菜鸟一直,希望懂的人能提些意见以此提高,不尽感激!

kuqideyanlei 发表于 2017-7-15 11:37

#include<stdio.h>
#define BEERPRICE 2
int main(){
        int money = 10;
        int beergai;
        int beerbottle;
        int total;
        int beer;
        printf("请输入钱数:");
        scanf("%d",&money);
    beer = money / BEERPRICE ;
    beerbottle=beer;
    beergai=beer;
    total=beer;
    do{
      if(beergai>=4||beerbottle>=2){
              beer=0;
              beer = beerbottle / 2;   //算出酒瓶换酒的个数
                beerbottle=beerbottle % 2;   //算出剩余酒瓶数量
                beer += beergai /4;   //算出能换的所有酒的数量
                beergai=beergai % 4;   //算出剩余瓶盖的数量
                  beerbottle=beer + beerbottle; //算出现在的酒瓶数量
                  beergai =beer + beergai ; //算出现在的瓶盖数量
                total += beer; //所喝酒数量的和
                }else{
                        break;
                }
      
        }while(1);
    printf("你能够喝到的酒的数量为:%d",total);
    return 0;
} 为啥我算出来的是 15瓶呢???难道我代码有问题吗??

18677405259 发表于 2017-7-22 10:59

我学的是c#,初学者。下面是我写的代码,一开始用笔推理出来,到了电脑上还真不知道该如何去打代码,最后还是百度看了参考才做出来的。运行结果是15瓶,不知道对不对了{:301_1005:}


static void Main(string[] args)
      {
            //啤酒两元1瓶,四个瓶盖换1瓶,两个空瓶换1瓶,问10块钱可以喝几瓶?
            int pj;//啤酒
            int pg;//瓶盖
            int kp;//空瓶
            int money = 10;//金钱
            int hpj;//换的啤酒
            pj = money / 2;
            pg = pj;kp = pj;
            while (pg / 4 != 0 || kp / 2 != 0)
            {
                hpj = (pg / 4)+(kp/2);
                pg = (pg % 4)+hpj;
                kp = (kp% 2)+hpj;
                pj += hpj;
            }
            Console.WriteLine("啤酒两元1瓶,四个瓶盖换1瓶,两个空瓶换1瓶,问10块钱可以喝:{0}瓶",pj);
            Console.ReadKey();
      }

Cizel 发表于 2015-12-12 16:24

修改下标题格式,代码最好加上code的代码标签

ytw6176 发表于 2015-12-12 16:27

教C语言基础,上课第三天就是。。推箱子。。扫雷。。

吾爱破解1111 发表于 2015-12-12 16:33

看看,,,

Division 发表于 2015-12-12 16:39

脑算如果没错能喝14瓶还剩1个盖子

yyk_outlook 发表于 2015-12-12 16:45

楼主 好厉害{:1_921:}

益达口香糖 发表于 2015-12-12 16:48

还以为有图看呢!

葬礼昨天 发表于 2015-12-12 16:53

奋斗丶小Z 发表于 2015-12-12 16:24
修改下标题格式,代码最好加上code的代码标签

好哒,虽然并不是很理解你说的是什么意思,我会尽量查百度去解决的。。{:301_1003:}

葬礼昨天 发表于 2015-12-12 16:54

益达口香糖 发表于 2015-12-12 16:48
还以为有图看呢!

什么图。。。

Tendro 发表于 2015-12-12 17:02

我只想知道其实可以有多少
页: [1] 2 3 4
查看完整版本: 【原创源码】C语言 一个喝啤酒小游戏的编程实现(菜鸟级)