C语言实现的猴子吃桃问题算法解决方案

时间:2021-05-20

本文实例讲述了C语言实现的猴子吃桃问题。分享给大家供大家参考,具体如下:

问题:

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

解析:

① 从最后一天的x=1个,倒推出前一天的个数x,需要注意的是表达式为x=2(x+1),而不是x=2x+1,注意两者之间的区别,想清楚为什么第二种不正确。

② 将该表达式作为循环9次的循环体,并在该语句处设置断点,进行观察即可。

具体程序:

#include<stdio.h>int main(){ int i; int x=1; for(i=0;i<9;i++) x = 2*(x+1); printf("%d\n",x); return 0;}

程序运行结果为:1534.

希望本文所述对大家C语言程序设计有所帮助。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章