当前位置:首页 » 编程语言 » c语言桃花

c语言桃花

发布时间: 2024-03-01 07:33:59

A. C语言猴子吃桃问题递归法

题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个
第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下
的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。
1.程序分析:采取逆向思维的方法,从后往前推断。
2.程序源代码:
main()
{
int day,x1,x2;
day=9;
x2=1;
while(day>0)
{x1=(x2+1)*2;/*第一天的桃子数是第2天桃子数加1后的2倍*/
x2=x1;
day--;
}
printf("the total is %d\n",x1);
}
==============================================================

B. C语言 用递归算法来解决猴子吃桃问题。:一天一只猴子摘下一堆桃子,吃了一半,觉得不过瘾,又多吃了一

#include<stdio.h>

intn;//n作为全局变量

intpeach(intx)//表示第x天有几个桃子
{
if(x<n)//如果x不是最后一天,那么这一天桃子的数量等于明天桃子数加1再乘以2
return2*(peach(x+1)+1);
elseif(x==n)//如果是最后一天,返回1
return1;
else
return-1;//异常

}

intmain()
{
scanf("%d",&n);//输入题目中的n
printf("%d ",peach(1));
return0;
}

请采纳。

C. C语言猴子吃桃

一个猴子摘了一些桃子,它每天吃了其中的一半然后再多吃了一个,
直到第10天,它发现只有1个桃子了,问它第一天摘了多少个桃子?
猴子分N天吃完了桃子,要想求出第1天的桃子数,就先要求出第2天的桃子数,.......因此,有:
a1=(a2+1)*2;
a2=(a3+1)*2;
a3=(a4+1)*2;
......
a9=(a10+1)*2;
a10=1;
现在就知道了算法,我们可以用递归来求解:
int qiu(int a,int n)
{
if(n==1) a=1; //第10天就只剩1个了
else a=(a(n-1)+1)*2; //前一天总比后1天多一半加1
}
-------------------------------------
#include<stdio.h>
int qiu(int a,int n);
main(){
int zuih=1,tians=10;//最后一天的个数,天数
long sum;
sum=qiu(1,10);
printf("di yi tian you %ld ge.\n"):
}
int qiu(int a,int n)
{
if(n==1) a=1; //第10天就只剩1个了
else a=(a(n-1)+1)*2; //前一天总比后1天多一半加1
}

热点内容
阿里云服务器托管合同 发布:2024-11-29 07:46:37 浏览:296
linux用户权限设置 发布:2024-11-29 07:43:39 浏览:270
c语言if函数嵌套 发布:2024-11-29 07:43:35 浏览:757
学编程L2 发布:2024-11-29 07:39:58 浏览:429
微信如何设置收与付密码 发布:2024-11-29 07:39:15 浏览:541
mysql备份与恢复脚本 发布:2024-11-29 07:39:13 浏览:50
在c语言的基本单位是 发布:2024-11-29 07:38:36 浏览:792
c语言算法结构 发布:2024-11-29 07:23:08 浏览:222
空气压缩呼吸 发布:2024-11-29 07:23:00 浏览:56
百望云服务器设备编号必填 发布:2024-11-29 07:13:50 浏览:33