| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1116 人关注过本帖
标题:计算1000以内的完数程序,哪个地方错了,跪求各位高手!
只看楼主 加入收藏
lfaohxb
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2009-10-24
结帖率:66.67%
收藏
已结贴  问题点数:20 回复次数:8 
计算1000以内的完数程序,哪个地方错了,跪求各位高手!
#include<stdio.h>
int fac(int n)
{
    int i,s=0;
for(i=1;i<=n;i++)
{
    if(n%i==0)
        s=s+i;
}
    return s;
}
 
main()
{
    int n;
    for(n=1;n<=1000;n++)
    {
        if(n==fac(n))
            printf("%d\t\n",n);
    }
}
搜索更多相关主题的帖子: 计算 include 
2009-10-26 21:41
sen_lin
Rank: 6Rank: 6
等 级:侠之大者
威 望:3
帖 子:114
专家分:436
注 册:2009-3-24
收藏
得分:5 

#include<stdio.h>  
 
int fac(int n)  
{  
    int i,s=0;  
for(i=1;i<n;i++)  
{  
    if(n%i==0)  
        s=s+i;  
}  
  if(s==n)
    return s;  
  
    return 0;
}  
 
main()  
{  
    int n;  
    for(n=2;n<=1000;n++)  
    {  
        if(fac(n)>0)  
            printf("%d\t\n",n);  
    }  
     
}
如此即可
2009-10-26 22:08
柠檬可乐
Rank: 4
等 级:业余侠客
威 望:6
帖 子:66
专家分:205
注 册:2009-6-16
收藏
得分:2 
完数是什么数啊
2009-10-27 11:56
sen_lin
Rank: 6Rank: 6
等 级:侠之大者
威 望:3
帖 子:114
专家分:436
注 册:2009-3-24
收藏
得分:3 
就是它的所有的因子的和还是它本身!
2009-10-27 18:01
zhjr5201314
Rank: 4
等 级:业余侠客
帖 子:63
专家分:238
注 册:2009-9-10
收藏
得分:5 
for(i=1;i<n;i++)不包括n
2009-10-27 18:07
寻找南方
Rank: 2
等 级:论坛游民
帖 子:57
专家分:75
注 册:2009-10-21
收藏
得分:2 
一个数如果恰好等于除它本身外的因子之和,这个数就称为"完数",也叫“完美数”。例如6=1+2+3.(6的因子是1,2,3)

我一路向前~~~~~~~~~~~~~
2009-10-27 18:11
m456m654
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:3
帖 子:783
专家分:2806
注 册:2009-9-17
收藏
得分:3 
for(i=1;i<n;i++)  
其实就是i的循环条件错了。i不可能(不考虑i为1的时候)取到n,否则s永远大于n了。
2009-10-27 18:20
lfaohxb
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2009-10-24
收藏
得分:0 
谢谢各位高手。。。
2009-10-27 18:25
gxikings
Rank: 1
等 级:新手上路
帖 子:11
专家分:3
注 册:2009-10-29
收藏
得分:0 
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
void main()
{
 int m,s,i;
 clrscr();
   for(m=2;m<1000;m++)
   {
     s=0;
       for(i=1;i<m;i++)
     if(m%i==0) s=s+i;
       if(s==m)
     {printf("\n\n%d its factors are  ",m);
      for(i=1;i<m;i++)
        if(m%i==0)  printf("%d  ",i);
      printf("\n\n\n");
     }
     }
 system("pause");
}
2009-10-29 14:17
快速回复:计算1000以内的完数程序,哪个地方错了,跪求各位高手!
数据加载中...
 
   



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

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