C语言描述——弹跳问题
题目
一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?
程序分析
见下面注释
程序源代码
int main(void){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);return 0;}
运行结果
the total of road is 299.609375the tenth is 0.097656 meter
