c语言:猴子吃桃子问题,

2024-05-15 06:37

1. c语言:猴子吃桃子问题,

1、打开visual C++ 6.0-文件-新建-文件-C++ Source File


2、题目:猴子吃桃:猴子第1天摘下若干个桃子,当即吃掉一半多1个桃子,第2天早上又将剩下的桃子吃掉一半多1个,以后每天都吃掉前天一半多1个,到第10天早上只剩下一个桃子,求第1天猴子到底摘子多少个桃子?

3、输入预处理命令和主函数:
#include          /*输入输出头文件*/
void main()           /*空类型:主函数*/

4、定义变量、确定天数和每天桃子的数量: 
int a,b=1;           /*定义变量的数据类型为整型*/
for(a=1;a<=9;a++)          /*确定天数*/
b=(b+1)*2;          /*计算从第10天到第1天每天桃子的数量*/

5、输出第1天桃子的数量:
printf("第一天摘了%d个桃子\n",b);         /*输出第1天桃子的数量*/

6、完整的源代码:
/*                猴子吃桃
猴子第1天摘下若干个桃子,当即吃掉一半多1个桃子,第2天早上又将剩下的桃子吃掉一半多1个,以后每天都吃掉前天一半多1个,到第10天早上只剩下一个桃子,求第1天猴子到底摘子多少个桃子?*/
#include          /*输入输出头文件*/
void main()            /*空类型:主函数*/
{
int a,b=1;           /*定义变量的数据类型为整型*/
for(a=1;a<=9;a++)          /*确定天数*/
b=(b+1)*2;          /*计算从第10天到第1天每天桃子的数量*/
printf("第一天摘了%d个桃子\n",b);         /*输出第1天桃子的数量*/
}

c语言:猴子吃桃子问题,

2. 一个有关猴子吃桃子的编程题,用c语言循环语句怎么做??

1、首先在电脑中打开vc6.0,新建一个项目,添加头文件,如下图所示。

2、接着添加main主函数,如下图所示。

3、然后定义day、x1、x2,如下图所示。

4、接着初始day、x2,然后使用while循环。

5、最后使用printf打印,运行程序看看结果,猴子吃桃问题就完成了。

3. 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
 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语言猴子吃桃问题流程图

4. 编程问题 猴子吃桃子问题

X*(9/10)*(8/9)*(7/8) = 70

5. 猴吃桃 编程问题

具体思路如下:
第10天剩余桃数:1
第9天剩余桃数:(1+1)*2=4
第8天剩余桃数:(4+1)*2=10
。。。
规律很明显,即每天剩余的桃数是第二天桃数加1的两倍。具体代码如下:
#include
void main()
{
    int taoshu=1;//第10天的桃数
  int i;
   for(i=9;i<=1;i--)
  {
     taoshu=(taoshu+1)*2;
  }//得到第一天剩余的桃数之后,还要求一次才是真正摘得数目
 taoshu=(taoshu+1)*2;//当然也可以让循环多执行一次实现,但这样更好理解
  printf("%d\n",taoshu);
}

猴吃桃 编程问题

6. 用c语言解决猴子吃桃问题(使用指针)猴子第一天摘了若干个桃子,当即吃了一半,还不过瘾又多吃了一个。

n=10: a=1
n=9: a=a*2+1
n=8: a=a*2+1
...
n=1: a=a*2+1
这个用指针还真不知道怎么做
a=1; for ( i=10;i>1;i-- ) a=a*2+1;
得到a=1023只
验算一下:
1.1023=511+511+1
2.511=255+255+1
3.255=127+127+1
4.127=63+63+1
5.63=31+31+1
6.31=15+15+1
7.15=7+7+1
8.7=3+3+1
9.3=1+1+1
10.1
一个猴子一天吃511只桃子早撑死了