【C语言练习】猴子吃桃

题目:一只小猴子一天摘了许多桃子,第一天吃了一半,然后忍不住又吃了一个;第二天又吃了一半,再加上一个;后面每天都是这样吃。到第10天的时候,小猴子发现只有一个桃子了。问小猴子第一天共摘了多少个桃子。

【C语言练习】猴子吃桃

    • 一、使用循环语句
      • 1.使用for循环
      • 2.使用while循环
      • 3.使用do...while循环
    • 二、使用递归函数

一、使用循环语句

1.使用for循环

#include
int main()
{
    int taozi = 1;
    int day = 1;
    for (day = 10; day > 1;day --)
    {
        taozi++;
        taozi = 2 * taozi;
        printf("第%d天的桃子是%d个\n",day,taozi);
    }
    printf("第一天小猴子一共摘了%d个桃子",taozi);
}
#include
int main()
{
	int day,taozi=1,i;
	for(day=9;day>=1;day--)
	{
		taozi=(taozi+1)*2;
		printf("第%d天的桃子是%d个\n",day,taozi);
	}
	printf("第一天小猴子一共摘了%d个桃子",taozi);
	return 0; 
}

【运行结果】
【C语言练习】猴子吃桃_第1张图片

2.使用while循环

#include
int main(void)
{
	int taozi=1,day=10;
	while(day>1){
		taozi=(taozi+1)*2;
		day--;
	};
	printf("第一天小猴子一共摘了%d个桃子",taozi);
	return 0;
 } 

【运行结果】
【C语言练习】猴子吃桃_第2张图片

3.使用do…while循环

#include
int main(void)
{
	int taozi=1,day=10;
	do{
		taozi=(taozi+1)*2;
		day--;
	}while(day>1);
	printf("第一天小猴子一共摘了%d个桃子",taozi);
	return 0;
 } 

【运行结果】
【C语言练习】猴子吃桃_第3张图片

二、使用递归函数

#include
int func(day)
{
	int taozi;
	if(day==10)
	{
		return taozi=1;
	}
	taozi=(func(day+1)+1)*2;
	return taozi;
}
int main()
{
	int taozi,day=1;
	taozi=func(day);
	printf("第一天小猴子一共摘了%d个桃子",taozi);
	return 0;
 } 

【运行结果】
【C语言练习】猴子吃桃_第4张图片

你可能感兴趣的:(C语言)