C 练习实例20 - 小球自由下落

C 语言经典100例 C 语言经典100例

题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?

程序分析:见下面注释。

程序源代码:

//  Created by www.w3cmap.com on 15/11/9.
//  Copyright © 2015年 W3C教程. All rights reserved.
//

#include<stdio.h>
int main()
{
    float h,s;
    h=s=100;
    h=h/2; //第一次反弹高度
    for(int i=2;i<=10;i++)
    {
        s=s+2*h;
        h=h/2;
    }
    printf("第10次落地时,共经过%f米,第10次反弹高%f米\n",s,h);
    return 0;
}

以上实例输出结果为:

第10次落地时,共经过299.609375米,第10次反弹高0.097656米

C 语言经典100例 C 语言经典100例