用C语言实现:喝汽水,1瓶汽水1元,2个空瓶可以换一瓶汽水,给20元,可以多少汽水。

解题思路:2元可以喝3瓶,4元可以喝7瓶,5元可以喝9瓶……依次可得规律:有n元可以喝2*n-1瓶,判断空瓶的数量,是奇数则兑换n-1瓶,为偶数则兑换

#include<stdio.h>
#include<windows.h>
int buy_water(int money)
{	int count=money;
	while(money){
		if(money%2!=0){   //如果空瓶是奇数,则兑换n-1瓶 
			count+=money-1;
			break;
		} 
                else{           //如果是偶数则兑换n瓶 
			money/=2;
			count+=money;
		}
		
	}
	return count;
	
}
int main(){
	int money=20;
	int n=0;
	n=buy_water(money);
	printf("%d\n",n);
	system("pause");
	return 0;
} 

猜你喜欢

转载自blog.csdn.net/qq_41889292/article/details/80295641