关于c:喝饮料问题饮料价格1元瓶两瓶饮料空瓶可以重新兑换一瓶饮料问20元可以喝多少瓶饮料

办法1:

int main()//办法一
{
    int money = 0;//手上的钱,即用钱买回来的汽水数量
    int total = 0;//买的+兑的
    int empty = 0;//手里的空瓶
    scanf_s("%d", &money);
    int sum = totalsum(money);
    printf("sum=%d\n", sum);
    total = money;//用钱买回来的汽水数量
    empty = money;//喝完用钱买的汽水后手里的空瓶数量
    while (empty>=2)//只有空瓶不低于两瓶就能够换汽水
    {
        total += empty / 2;
        empty = empty / 2 + empty % 2;//空瓶的数量为换回来的空瓶+手里余下的空瓶
    }
    printf("total=%d\n", total);
}

办法2:

办法2,因为两个空瓶换一瓶饮料,一瓶饮料1块钱,相当于1个空瓶等于0.5元,20块钱能够换40个空瓶,相当于喝了40瓶汽水,但因为最初手里留了一个空瓶,所以只能换来39个空瓶,即喝了39瓶汽水
int totalsum(int money)
{
    int sum = 0;
    if (money== 0)//手里没钱就不能喝饮料
    {
        return 0;
    }
    else
    {
        sum = money * 2 - 1;
        return sum;
    }
    
//}

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理