Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2509520
  • 博文数量: 308
  • 博客积分: 5547
  • 博客等级: 大校
  • 技术积分: 3782
  • 用 户 组: 普通用户
  • 注册时间: 2009-11-24 09:47
个人简介

hello world.

文章分类

全部博文(308)

分类: C/C++

2010-07-28 15:30:15

    一球从100m高度自由落下,每次落地后反跳回原高度的一半,再落下。求它在第10次落地落地时,共经过多少m?第10次反弹多高?
    看到这个题目,我们分析可以得到,第一次落地,经过的100m;第二次落地时的路程等于第一次反弹和落回的高度和即:100 + 100 / 2 * 2。因此通过书写循环,我们很容易得出第10次落地的共经过多少米。而第十次落地后,反弹的高度是第10次的距离除2得到。代码如下:

#include <stdio.h>

int main(int argc,int *argv[])
{
    float sn = 100.0,result = 0;
    int i,n=10;
    
    result += sn;
    for (i = 2;i <= n;i++)
    {
        sn = sn / 2;
        result += sn * 2;
    }
    
    printf("all lenth is %.3f,the 10 is height is %.3f",result,sn / 2);
    
    system("pause");
    return 0;
}


程序运算结果为:第10次落地共经历了299.609m,第10次反弹0.098m.
阅读(1174) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~