永发信息网

会c语言的帮帮忙

答案:4  悬赏:20  手机版
解决时间 2021-07-18 15:57
  • 提问者网友:爱了却不能说
  • 2021-07-18 01:04
猴子第一天摘下若干个桃子,当即吃了一半,不过瘾又多吃了一个,第二天又将剩下的桃子吃掉一半又多一个,以后每天都吃前一天剩下的一半零一个,到第十天想再吃时,只剩下一个桃子,求第一天共摘了多少个桃子?
最佳答案
  • 五星知识达人网友:冷風如刀
  • 2021-07-18 02:16

程序代码如下:


#include <iostream.h>


void main()
{
int taozi=0;

int a[11]={0};
int i=0;
a[10]=1;//第十天的桃子
cout<<"第10天有:"<<a[10]<<"个桃子"<<endl;;
for(i=9;i>=1;i--)
{
a[i]=(a[i+1]+1)*2;
cout<<"第"<<i<<"天有:"<<a[i]<<"个桃子"<<endl;;
}
cout<<endl<<"猴子总共摘了:"<<a[1]<<"个桃子。"<<endl;
}


程序运行结果:


全部回答
  • 1楼网友:不想翻身的咸鱼
  • 2021-07-18 03:41

终于做出来了:递归算法:

#include <iostream.h> int f(int n,int taozi) { if(n==1)return taozi; else { cout<<"n:"<<n<<",taozi:"<<taozi<<endl; return f(n-1,(taozi+1)*2); }

}

void main() { int taozi=f(10,1);//第十天,一个桃子 cout<<"taozi:"<<taozi<<endl;//输出第一天的桃子,即猴子摘得桃子数 }

  • 2楼网友:神的生死簿
  • 2021-07-18 03:22
#include<stdio.h> void main() { int day,x1,x2,n; x2=1; printf("输入吃了几天:"); scanf("%d",&n); day=n; while(day>0) { x1=(x2+1)*2;//第一天的桃子数是第2天桃子数加1后的2倍 printf("第%d天",n-day+1); x2=x1; day--; printf("吃了%d个桃子",x2); printf("\n"); }
  • 3楼网友:不如潦草
  • 2021-07-18 02:43

结果是1534:

用while循环:

#include <stdio.h>

void main() { int sum=1,day=9;

while(day) { sum=2*(sum+1); day--; } printf("%d\n",sum); }

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯