标题:要求编写一个数等于他的所有因素的和;机器显示编程可以的,但是运行起来没 ...
只看楼主
chenziguo
Rank: 1
等 级:新手上路
帖 子:40
专家分:0
注 册:2013-10-25
结帖率:58.33%
已结贴  问题点数:10 回复次数:1 
要求编写一个数等于他的所有因素的和;机器显示编程可以的,但是运行起来没有任何结果;
#include <stdio.h>
#include <stdlib.h>
#include <math.h>

void main()
{
   int m,n,s,a,b;
    s=0;
    for(m=2;m<=100;m++)//对2-10000的数进行逐项计算
    {
        b=m;//讲m的值付给b,
      n=sqrt(m);s=0;
      for(a=2;a<=n;a++)//提取所有因素
      {
          if(m%a==0)//判断是否能被整除
          {
              m=m/a;
              if(m>1)
              {
                  s+=a;continue;//如果m>1,那么讲公因素相加并返回继续
              }
             if(m==1)
              {
                  s=s+1;
              }
          }
      }
      if(s==b)//判断
        printf("%d\t",b);
    }
}
搜索更多相关主题的帖子: include continue 
2015-03-28 11:44
执笔画江山
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:3
帖 子:265
专家分:1010
注 册:2015-1-13
得分:10 
没仔细看,但是n=sqrt(m);这句就是个明显得错误。sqrt之后的结果肯定是int型的么????
n=(int)sqrt(m);个人拙见

授人以鱼,不如授人以渔
2015-03-28 15:11



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




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

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