| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 513 人关注过本帖
标题:【求助】哪里出错
只看楼主 加入收藏
stevenwu
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2013-12-7
结帖率:90.91%
收藏
已结贴  问题点数:10 回复次数:10 
【求助】哪里出错
求1000内完数 没有输出

#include "stdafx.h"
#include "stdio.h"


int main(int argc, char* argv[])
{
    int a,b,sum=0;
    printf("1000以内的完数有:");
    for(a=2;a<=1000;a++)
    {for(b=1;b<=a-1;b++)
    if(a%b==0)
    sum=sum+b;   
    if(a==sum)
        printf("%d\n",a);
    }
    return 0;
}
搜索更多相关主题的帖子: include 
2013-12-10 19:38
pauljames
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:千里冰封
威 望:9
帖 子:1555
专家分:10000
注 册:2011-5-8
收藏
得分:2 
单步调试

经常不在线不能及时回复短消息,如有c/单片机/运动控制/数据采集等方面的项目难题可加qq1921826084。
2013-12-10 19:43
stevenwu
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2013-12-7
收藏
得分:0 
回复 楼主 stevenwu
??
2013-12-10 19:44
stevenwu
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2013-12-7
收藏
得分:0 
回复 2楼 pauljames
能具体点吗
2013-12-10 19:56
yuccn
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:何方
等 级:版主
威 望:167
帖 子:6815
专家分:42393
注 册:2010-12-16
收藏
得分:2 
if(a%b==0)
     sum=sum+b;

没有看到sum清零,一直累加?

我行我乐
公众号:逻辑客栈
我的博客:
https://blog.yuccn. net
2013-12-10 19:57
韶志
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:斗气大陆
等 级:贵宾
威 望:44
帖 子:2223
专家分:13592
注 册:2013-3-22
收藏
得分:2 
你的程序什么思路啊...   

调试...  Debug

提醒一下,每次sum是否要重新归 0 ,不过这样仍然不能得出正确结果

三十年河东,三十年河西,莫欺少年穷!
2013-12-10 20:00
stevenwu
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2013-12-7
收藏
得分:0 
回复 6楼 韶志
对啊 ,我改成这样了,这样清零可以吗,你帮忙修改一下??或者你写你会怎么写??

#include "stdafx.h"
#include "stdio.h"


int main(int argc, char* argv[])
{
    int a,b,sum=0;
    printf("1000以内的完数有:");
    for(a=2;a<999;a++)/*将1000以内所有的数逐个除以除自身外的数,找出所有不包含自身的因子,再求和
                         再跟自身比较*/
    {for(b=1;b<a;b++)
    if(a%b==0)
    sum=sum+b;
    }
    if(a==sum)
    printf("%d\n",a);
    sum=0;
    return 0;
2013-12-10 20:32
qq471402415
Rank: 2
等 级:论坛游民
帖 子:88
专家分:45
注 册:2013-12-3
收藏
得分:2 
#include "stdio.h"


int main(int argc, char* argv[])
{
    int a,b;
    printf("1000以内的完数有:");
    for(a=2; a<=1000; a++)

    {
        int sum=0;
        for(b=1; b<=a-1; b++)
            if(a%b==0)
                sum=sum+b;
        if(a==sum)
            printf("%d\n",a);
    }
    return 0;
}
2013-12-10 20:33
beyondyf
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:3282
专家分:12654
注 册:2008-1-21
收藏
得分:2 
你们这main函数都是IDE生成的吧。既然没用到main的参数加它不觉得累赘?另外再好好看看完数的定义,了解一下因子和质因子的区别。

重剑无锋,大巧不工
2013-12-10 20:38
stevenwu
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2013-12-7
收藏
得分:0 
回复 9楼 beyondyf
复制的就没想那么多了
2013-12-10 20:50
快速回复:【求助】哪里出错
数据加载中...
 
   



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

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