●●●●C语言~一个球从100米高度自由落下,每次落地后反弹回原高度的一半,再落下。求它在第10次落地时,
6个回答
展开全部
题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在
第10次落地时,共经过多少米?第10次反弹多高?
1.程序分析:见下面注释
2.程序源代码:
main()
{
float sn=100.0,hn=sn/2;
int n;
for(n=2;n<=10;n++)
{
sn=sn+2*hn;/*第n次落地时共经过的米数*/
hn=hn/2; /*第n次反跳高度*/
}
printf("the total of road is %f\n",sn);
printf("the tenth is %f meter\n",hn);
}
第10次落地时,共经过多少米?第10次反弹多高?
1.程序分析:见下面注释
2.程序源代码:
main()
{
float sn=100.0,hn=sn/2;
int n;
for(n=2;n<=10;n++)
{
sn=sn+2*hn;/*第n次落地时共经过的米数*/
hn=hn/2; /*第n次反跳高度*/
}
printf("the total of road is %f\n",sn);
printf("the tenth is %f meter\n",hn);
}
展开全部
#include <stdio.h>
#include <math.h>
#include <conio.h>
void main()
{
float s=100.0,h,l,k;//s为初始高度,设h为每一次弹跳的高度,l为路程,k为每一阶段的路程//
int n;
clrscr();//清屏函数//
for(n=2;n<=10;n++)
{
h=s/pow(2,n-1);//第n次弹跳的高度(看不懂这个可以画图)//
k=h*2;//每一阶段路程,就是指每一次走多少路//
l+=k;
}
l=l+100;//最后要加100,因为前面是从第二次开始算的//
printf("the total of road is %f\n",l);
printf("the tenth is %f meter\n",h);
}
答案是299多和0.19多具体忘了,和前面那个差不多,应该是对的,第一个好像有错。其实我是要交作业来搜答案,发现没有自己满意的还有些答案是错的,所以自己写了,这里有注释希望可以帮助到一些人,还有如果有错误的地方请指正,我是小萌新,嘻嘻。不要和我一样copy作业哦。
#include <math.h>
#include <conio.h>
void main()
{
float s=100.0,h,l,k;//s为初始高度,设h为每一次弹跳的高度,l为路程,k为每一阶段的路程//
int n;
clrscr();//清屏函数//
for(n=2;n<=10;n++)
{
h=s/pow(2,n-1);//第n次弹跳的高度(看不懂这个可以画图)//
k=h*2;//每一阶段路程,就是指每一次走多少路//
l+=k;
}
l=l+100;//最后要加100,因为前面是从第二次开始算的//
printf("the total of road is %f\n",l);
printf("the tenth is %f meter\n",h);
}
答案是299多和0.19多具体忘了,和前面那个差不多,应该是对的,第一个好像有错。其实我是要交作业来搜答案,发现没有自己满意的还有些答案是错的,所以自己写了,这里有注释希望可以帮助到一些人,还有如果有错误的地方请指正,我是小萌新,嘻嘻。不要和我一样copy作业哦。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
main()
{float h=100,sum=0,i;//i 也可以定义成int型
for (i=0;i<10;i++)
{sum=sum+h;
h=h/2;
}
printf("%2.0f %f %f\n",i,h*2,sum);
}
sum为总路程,h*2为第十次弹跳的高度
main()
{float h=100,sum=0,i;//i 也可以定义成int型
for (i=0;i<10;i++)
{sum=sum+h;
h=h/2;
}
printf("%2.0f %f %f\n",i,h*2,sum);
}
sum为总路程,h*2为第十次弹跳的高度
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
void main()
{int i;
float sum=0;
float h=100;
sum=sum+h;
for(i=1;i<10;i++)
{h=(float)h/2;
sum=sum+2*h;}
h=(float)h/2;
printf("第十次反弹时总共经过:\n");
printf("%f\n",sum);
printf("第十次反弹时的高度为:\n");
printf("%f\n",h);}
void main()
{int i;
float sum=0;
float h=100;
sum=sum+h;
for(i=1;i<10;i++)
{h=(float)h/2;
sum=sum+2*h;}
h=(float)h/2;
printf("第十次反弹时总共经过:\n");
printf("%f\n",sum);
printf("第十次反弹时的高度为:\n");
printf("%f\n",h);}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
/* Note:Your choice is C IDE */
#include "stdio.h"
int main(void)
{
float a,s=100,i;
for(a=100,i=1;i<=9;i++)
{
s=s+(a/2)*2;
a=a/2;
}
a=a/2;
printf("共经过%f,第十次反弹%f",s,a);
return 0;
}
#include "stdio.h"
int main(void)
{
float a,s=100,i;
for(a=100,i=1;i<=9;i++)
{
s=s+(a/2)*2;
a=a/2;
}
a=a/2;
printf("共经过%f,第十次反弹%f",s,a);
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询