标题:C语言谭浩强课后题请教
只看楼主
jk1414
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2015-12-3
结帖率:75%
已结贴  问题点数:5 回复次数:4 
C语言谭浩强课后题请教
一个球从100m高度自由下落,每次落地后反跳回原高度的一半,再落下,再反弹,求它在第10次落地时,共经过多少米,第十次反弹多高


下面是我写的程序,思路应该对着啊
#include<stdio.h>
#include<math.h>
int main()
{
    float i,n,s,d,h;
    scanf("%f",&n);
    for(i=1,s=0;i<=n;i++)
    {
        h=100*pow(1/2,i);//第n次弹起高度
        s=s+3*h;
        if(i==n)
            s=s-100*pow(1/2,n);//第n次落地时球走过的路程和
    }
    printf("%f\n%f\n",h,s);
    return 0;

}
但是我不管我输入几都是显示0
比我我输入 3

哪里有问题啊
搜索更多相关主题的帖子: include return C语言 
2016-08-07 12:37
linlulu001
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:20
帖 子:944
专家分:4047
注 册:2016-4-13
得分:5 
h=100*pow(1/2,i);改成h=100*pow(0.5,i);
2016-08-07 13:05
jk1414
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2015-12-3
得分:0 
回复 2楼 linlulu001

高度解决了  但是这个路程和还是不行啊

我就是我,
            颜色不一样的烟火、、
2016-08-07 13:13
jk1414
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2015-12-3
得分:0 
回复 2楼 linlulu001
OK 成功解决 因为忘了 给s赋初值 0;pow()函数中不能有分数的存在吗?

我就是我,
            颜色不一样的烟火、、
2016-08-07 13:19
linlulu001
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:20
帖 子:944
专家分:4047
注 册:2016-4-13
得分:0 
那是算术式,不是分数,C语言没有分数一说。
2016-08-07 14:31



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-467628-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.325534 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved