解题思路:见注释
注意事项:
sum每次加上上次落地后反弹高度的二倍,总路程为sum-m
一定要初始化sum=0,不然判定答案错误
参考代码:
#include<stdio.h> int main() { int n; double m,h,sum=0;//一定要初始化sum=0,不然判定答案错误 scanf("%lf%d",&m,&n);//球从m米高度下落,第n次落地 h=m;//h为第n次落地后反弹的高度,while循环中h=h/2,则初始化h=m while(n--) { sum+=h*2;//sum每次加上上次落地后反弹高度的二倍,可见sum比总路程多m米 h=h/2; } printf("%.2lf %.2lf\n",h,sum-m);//总路程为sum-m return 0; }
0.0分
1 人评分