猴子吃桃

题目:一群猴子摘了一堆桃子,他们每天都吃当前桃子的一半且多吃一个,到了第10天就剩余一个桃子,用多种方法求出这群猴子原来共摘了多少桃子。

请输入最后剩余的桃子数:1
请输入数桃子之前猴子吃了多少次了?-2
您输入的次数有误!
请输入数桃子之前猴子吃了多少次了?9
猴子总共的桃子数目为:1534

根据题目要求自己编写主函数并且加入求桃子数目的函数

#include<stdio.h>

int taozi(int a, int b)
{
	int sum=a;
	for(b;b>0;b--)
	{
		sum=2*(++sum);
	}
	return sum;
}

int main(int argc, char** argv)
{
	int a,b;
	int k=1;
	printf("请输入最后剩余的桃子数:");
	scanf("%d",&a);
	
	while(k) 
	{
		printf("请输入数桃子之前猴子吃了多少次了?");
		scanf("%d",&b);	
		if(b>=0)
		{
			k=0;
			printf("猴子总共的桃子数目为:%d\n",taozi(a,b));
		}
		else
			printf("您输入的次数有误!\n");
		
	}
	
	return 0;
} 

代码学习

#include<stdio.h>
#include<stdlib.h>

int main(int argc, char** argv)
{
	int total=0;                                     //总数 
	int eat_time=0;                                  //次数 
	
	printf("请输入最后剩余桃子数:");
	scanf("%d",&total);
	
	while(true)                                     //正确输入所吃次数 
	{
		printf("请输入数桃子之前猴子吃了多少次了?");
		scanf("%d",&eat_time);
		if(eat_time<0)
		{
			printf("您输入的次数有误!\n");
			continue;
		}
		else
			break;	
	}
	
	while(eat_time>0)                             //逆向求解桃子次数 
	{
		total=2*(total+1);
		eat_time--;
	} 
	
	printf("猴子总共的桃子数目为:%d\n",total);
	
	system("pause"); 
	return 0;
} 

注意函数的定义:int taozi(int a, int b)
注意输入函数&:scanf("%d",&total);没有&程序不能继续运行,也不报错
while(true)、break、continue组成的循环输入

while(true)                                     //正确输入所吃次数 
	{
		printf("请输入数桃子之前猴子吃了多少次了?");
		scanf("%d",&eat_time);
		if(eat_time<0)
		{
			printf("您输入的次数有误!\n");
			continue;
		}
		else
			break;	
	}
©️2020 CSDN 皮肤主题: 1024 设计师:上身试试 返回首页