网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

c语言递归函数猴子偷桃 猴子吃桃子c语言编程题递归

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

/*猴子第一天摘下N个桃子,当时就吃了一半,还不过瘾,就又多吃了一个。*/

目前累计服务客户数千家,积累了丰富的产品开发及服务经验。以网站设计水平和技术实力,树立企业形象,为客户提供网站设计、成都网站设计、网站策划、网页设计、网络营销、VI设计、网站改版、漏洞修补等服务。成都创新互联始终以务实、诚信为根本,不断创新和提高建站品质,通过对领先技术的掌握、对创意设计的研究、对客户形象的视觉传递、对应用系统的结合,为客户提供更好的一站式互联网解决方案,携手广大客户,共同发展进步。

/*第二天又将剩下的桃子吃掉一半,又多吃了一个。*/

/*以后每天都吃前一天剩下的一半零一个。*/

/*到第10天在想吃的时候就剩一个桃子了*/

/*问第一天共摘下来多少个桃子?*/

#include stdio.h

#include stdlib.h

#include conio.h

/*第n天所剩桃子数*/

int getPeachNumber (int n) {

int num; /*定义所剩桃子数*/

int i=0;

if (n==10)  

return 1; /*递归结束*/

else {

num = getPeachNumber(n+1)*2 + 2; /*递归*/

printf("第%d天:%d个桃子\n", n, num); /*第n天剩num个桃子*/ 

}

return num;

}

int main (void) {

int num;

puts ("每天剩余的桃子数:");

num = getPeachNumber (1);

putchar ('\n');

puts ("================================================================");

putchar ('\n');

printf("猴子第一天摘了%d个桃子!\n", num);

putchar ('\n');

getch (); /*屏幕暂留*/

return 0;

}

运行结果

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

}

-------------------------------------

#includestdio.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

}

C语言作业:用递归法怎么做猴子摘桃?知道的大哥大姐帮帮忙!

猴子摘桃问题

猴子第一天摘下N个桃子,当时就吃了一半,还不过瘾,就又多吃了一个。第二天又将剩下的桃子吃掉一半,又多吃了一个。以后每天都吃前一天剩下的一半零一个。到第10天在想吃的时候就剩一个桃子了,问第一天共摘下来多少个桃子?

#include stdio.h  

int getPeachNumber (n) {  

int num; /* 定义所剩桃子数 */

if(n==10)

return 1; /*递归结束条件 */

else {  

num = getPeachNumber(n+1)*2 + 2; /* 递归 */

printf("第%d天所剩桃子%d个\n", n, num); /* 天数,所剩桃子个数 */

}

return num;

}

int main (void) {  

int num = getPeachNumber(1);  

printf("猴子第一天摘了%d个桃子。\n", num);

getch (); /* 屏幕暂留 */

return 0;  

}

运行结果


当前题目:c语言递归函数猴子偷桃 猴子吃桃子c语言编程题递归
文章源于:http://bjjierui.cn/article/hjgsdh.html

其他资讯