C语言编写:一个小球从h米高度落下,每次落地后反弹回原来高度的1/s,再落下。求它在第m次落下后共经历了多少米行程?第m次反弹有多高?
input:首先是一个整数n,表示有n组数据,每组数据包括三个整数h,s,m。分别表示小球开始的高度, 小球反弹原来高度的比例s (如s=2,表示原来高度的1/2)和小球反弹的次数m。
output:小球总的行程和最后一次反弹的高度,保留三位小数。
Sample input
2
100 4 6
100 2 10
Sample output:
166.602 0.024
299.609 0.098
#include <stdio.h>
int main()
{
int n;
scanf("%d",&n);
for(int k=0;k<n;k++)
{
float h,t=0;
int s,m;
scanf("%f %d %d",&h,&s,&m);
t = h;
int i;
for(i=1;i<m;i++)
{
h=h/s;
t=t+h*2;
}
printf("%.3f ",t);
printf("%.3f\n",h/s);
}
return 0;
}