这道题主要是考察编程逻辑,一定要分清奇数个空瓶和偶数个空瓶,还有终止循环的条件。
int main()
{
int _bottle = 0;//当空瓶为奇数个时,表示剩下的瓶子
int money = 20;
int count = 0;//总共的汽水数
int bottle=0;//空瓶数
if (money > 0)
{
count = money;
bottle = money;
}
while (bottle != 1)
{
if (bottle % 2 == 0)
{
count += bottle / 2;
bottle = bottle / 2;
}
else
{
count += bottle / 2;
_bottle = bottle % 2;
bottle = bottle / 2 + _bottle;
}
}
printf("%d\n", count);
return 0;
}