喝汽水,1瓶汽水1元,2个空瓶可以换一瓶汽水,给20元,可以多少汽水(编程实现)。
首先大家一定要把这个题的逻辑搞清楚,这个题问最后喝到的汽水,这是由两部分组成的,一部分是直接用钱买到的,一部分是用空瓶子换到的,下面是我给大家画的一个图。
当搞清楚题的逻辑,代码就容易实现了。
具体代码:
int main()
{
int money = 0;//钱
scanf("%d", &money);
int total = 0;//喝的汽水
int empty = 0;//空瓶子
total = money;//一元一瓶
empty = money;//一一对应
//用空瓶子换汽水
while (empty>=2)//当空瓶大于二时就可以换
{
total += empty / 2;
empty = empty/2 + empty % 2;//有可能会有剩余的
}
printf("%d", total);
return 0;
}
运行结果: