| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 430 人关注过本帖
标题:输入后无结果显示
只看楼主 加入收藏
小小熊宝宝
Rank: 2
来 自:江苏无锡
等 级:论坛游民
威 望:2
帖 子:183
专家分:38
注 册:2008-8-12
结帖率:100%
收藏
已结贴  问题点数:1 回复次数:2 
输入后无结果显示
#include <stdio.h>
int main(void)
{
    double sums_1,sums_2;
    int sign,times,n;
    n=1;
    printf("Please input the number of times you want\n");
    scanf("%d",&times);
    for(sums_1=0.0,sums_2=0.0;n<=times;n++)
    {
        sums_1+=1.0/(double)n;
        for(sign=1;sign<=n;sign++)
            sign*=-1;
        sums_2+=sign*1.0/(double)n;
    }
        printf("The result of %d times is %lf and %lf\n",times,sums_1,sums_2);
        return 0;
}


编译环境VC++6.0

输入后无结果显示,编译没有报错

已经改正

#include <stdio.h>
int main(void)
{
    double sums_1,sums_2;
    int sign,times,n;
    sign=1;
    sums_1=0.0,sums_2=0.0;
    printf("Please input the number of times you want\n");
    scanf("%d",&times);
    for(n=1;n<=times;n++)
    {
        sums_1+=1.0/n;
        sums_2+=sign*1.0/n;
        sign*=-1;
    }
        printf("The result of %d times is %lf and %lf\n",times,sums_1,sums_2);
        return 0;
}
原因符号没有控制好,思路不够清晰

[ 本帖最后由 小小熊宝宝 于 2010-9-10 13:02 编辑 ]
搜索更多相关主题的帖子: 输入 结果 
2010-09-10 11:20
佳嘉
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:3
帖 子:534
专家分:1383
注 册:2009-11-8
收藏
得分:1 
for(sign=1;sign<=n;sign++)
            sign*=-1;
sign的值只有0和1
2010-09-10 11:58
清风拂晓
Rank: 8Rank: 8
来 自:火星
等 级:蝙蝠侠
威 望:1
帖 子:356
专家分:889
注 册:2010-8-13
收藏
得分:0 
for(sign=1;sign<=n;sign++)
        { sign*=-1;
        }
        sums_2+=sign*1.0/(double)n;
这里你不应该这么弄printf("The result of %d times is %lf and %lf\n",times,sums_1,sums_2);
这里的sum_2会是0 因为‘1f‘ .
至于你说的为什么没有输出 我调试了下也不知道为什么 ,

清风拂暮(木)
2010-09-10 12:59
快速回复:输入后无结果显示
数据加载中...
 
   



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

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