| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 338 人关注过本帖
标题:求完数,为啥不出运算结果啊
只看楼主 加入收藏
紫棋的大眼睛
Rank: 1
来 自:石家庄
等 级:新手上路
帖 子:20
专家分:0
注 册:2014-10-17
结帖率:100%
收藏
 问题点数:0 回复次数:2 
求完数,为啥不出运算结果啊
#include<stdio.h>
int main()
{
    int a,i,sum=0;
    for(a=2;a<=1000;a++)
    {
        for(i=1;i<a;i++)
        {
            if(a%i==0)
                sum+=i;
            
               
        }
   
        if(sum==a)
        printf("%d",a);

    }





return 0;
}
图片附件: 游客没有浏览图片的权限,请 登录注册
2014-11-29 14:39
longwu9t
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:6
帖 子:732
专家分:2468
注 册:2014-10-9
收藏
得分:0 
你的程序错了,得到了0个结果,所以就没有正确值输出了。
看一下我写的:
程序代码:
#include <stdio.h>

int main(void) {
    int i, t, s;

    for(i=2; i<=1000; i++) {
        s=0; ////////////每次循环都把 s 置0

        for(t=1; t<i; t++) { ///////////第9行 求因子t
            if(i%t==0) {
                s+=t; ///////////各因子相加求和
            }
        }

        if(s==i) { //在第9行的for循环外比较,以免把24 (1+2+3+4+6+8=24, 12未加) 之类的数字包含
            printf("%4d\t",i);
        }
    }
    printf("\n");
    return 0;
}

Only the Code Tells the Truth             K.I.S.S
2014-11-29 16:26
烟花雨的干将
Rank: 2
等 级:论坛游民
威 望:1
帖 子:18
专家分:38
注 册:2014-11-12
收藏
得分:0 
#include<stdio.h>
int main()
{
    int a,i,sum;
    for(a=1;a<=1000;a++)
    {
        sum=0;
        for(i=1;i<a;i++)
        {
            if(a%i==0)
                sum+=i;
        }
   
        if(sum==a)
        printf("%d\n",a);
    }
return 0;
}
这样就行了
2014-11-29 16:33
快速回复:求完数,为啥不出运算结果啊
数据加载中...
 
   



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

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