c語言彈跳小球
A. 用C語言編程:一個球從x米高度自由落下,每次落地後反彈回原高度的一半;再落下,求在第幾次之後反彈高
#include<stdio.h>
intmain(){
floatx=0.0;
floats=0.0;
intcount=0;
printf("請輸入高度x:");
scanf("%f",&x);
s=x;
while(x>0.1){
x/=2.0;
s+=x*2;
printf("第%d次之後反彈高度為%.2lf米 ",++count,x);
}
printf("第%d次之後反彈高度小於0.1米,這一次落地時共經過%.2f米",count,s);
return0;
}
測試結果:
B. C語言關於小球自由落體的循環設計
#include<stdio.h>
#include<math.h>
int main()
{int m,i;
double sum=0,n;
printf("輸入小球落下的高度,小球反彈次數: ");
scanf("%lf %d",&n,&m);
sum+=n;
for(i=0;i<m;i++)
{
n=n/2.0;
printf("第%d次彈跳%lf高 ",i+1,n);
if(i<m-1)
{
sum+=n*2;
printf("彈跳第%d次下一次沒到,經過的路程: %lf ",i+1,sum);
}
printf(" ");
}
printf("前%d次彈跳共經過:%lf ",m,sum);
return 0;
}
C. 大一C語言作業,一球從 M 米高度自由落下,每次落地後反跳回原高度的一半;再落下,求它在第 N 次落地時
#include<stdio.h>
void main()
{
float M,m;
int n,i;
printf("請輸入初始高度,和彈地次數:");
scanf("%f %d",&M,&n);
m = M;
for(i =0;i<n;i++)
m = m/2;
printf("從%f米高掉下來的球,彈地%d次後高度為%f",M,n,m);
}
D. C語言球彈跳開始時離地100米,之後每次落地高度降低一半,請問哪裡錯了
最有一句printf有錯。
將",n,sum"移到引號外面即可解決這一句的問題。
E. ●●●●C語言~一個球從100米高度自由落下,每次落地後反彈回原高度的一半,再落下。求它在第10次落地時,
題目:一球從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);
}
F. C++:球彈跳高度的計算(要求:請自行運行,不要出現編譯錯誤)
#include <stdio.h>
int main()
{
int i;
float sum,t,n;
scanf("%f",&n);
for(i=2,sum+=n,t=n/2;i<=10;++i,t/=2)
sum+=t*2;
printf("%.4f %f",sum,t);
return 0;
}
G. C語言經典100例,小球彈跳的問題的正確答案是多少,謝謝,懸賞!
#include<stdio.h>
void main()
{
float s=100 ,h=100,t=0;int i=2,n;
printf("請輸入彈跳次數:");
scanf("%d",&n);
for(;i<=n;i++)
{
h=h/2;
t=t+2*h;
}
s=s+t;
h=h/2;
printf("%f \n %f",s,h);
}
運行結果為299.609375;0.097656;