老师平时布置的希冀系统上的作业答案,仅供参考!
【问题描述】
已知一球从高空落下时,每次落地后反弹至原高度的四分之一再落下。编写一程序,从键盘输入整数n和m,求该球从n米的高空落下后,第m次落地时共经过的路程以及第m次落地后反弹的高度,并输出结果。
【输入形式】
从键盘输入整数n和m,以空格隔开。
【输出形式】
输出两行:
第一行输出总路程,保留小数点后两位;
第二行输出第m次落地后反弹的高度,保留小数点后两位。
【输入样例】
40 3
【输出样例】
65.00
0.63
【参考答案】
#include<stdio.h>
int main()
{
float n,m,sum1,high1;//n为初始高度,m为第m次落下次数,sum1第一次路程,high1第一次反弹
float high = 0;//high为第m次反弹高度
float sum = 0;//sum为第m次落地总路程
int i=2;
scanf("%f %f",&n,&m);//如输入40 3注意中间加空格
sum1 = n;
high1 = n/4;
sum = sum1;
high = high1;
while(i++<=m)
{
sum = sum + 2*high;
high = high/4;
}
if(m==1)
{
printf("%.2f\n",sum1);
printf("%.2f\n",high1);
}
else
{
printf("%.2f\n",sum);
printf("%.2f\n",high);
}
return 0;
}
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
暂无评论内容