| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 594 人关注过本帖
标题:这个求解“完数”的代码错误在哪里呢?
取消只看楼主 加入收藏
胡振杰
Rank: 2
等 级:论坛游民
帖 子:41
专家分:63
注 册:2012-9-14
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:5 
这个求解“完数”的代码错误在哪里呢?
程序代码:
#include "stdio.h"
void main()
{
    int i,j,n;
    printf("1至1000之间的完数是:\n");
    j=0;
    for(i=2;i<=1000;i++)
    { int perfect(int n);
      n=perfect(i);
      if(n>0)
      {printf("\n%5d=",i);
       for(j=1;j<i;j++)
       {if(i%j==0)
         {if(j>1) printf("+");
          printf("%5d",j);
          }
        }
      }
     }
    getch();
    }
    int perfect(int n);
    {
      int i,sum;

      sum=0;
      for(i=1;i<n;i++)
      {
        if(n%i==0)
          sum+=i;
       }

     if(sum==n) return sum;

     return 0;
     }
2012-09-22 10:12
胡振杰
Rank: 2
等 级:论坛游民
帖 子:41
专家分:63
注 册:2012-9-14
收藏
得分:0 
程序代码:
#include "stdio.h"
void main()
{
    int i,j,n;
    printf("1至1000之间的完数是:\n");
    j=0;
    for(i=2;i<=1000;i++)
    {
      if((n=perfect(i))>0)
      {printf("\n%5d=",i);
       for(j=1;j<i;j++)
       {if(i%j==0)
         {if(j>1) printf("+");
          printf("%5d",j);
          }
        }
      }
     }
    getch();
    }
    int perfect(int n);
    {
      int i,sum;

      sum=0;
      for(i=1;i<n;i++)
      {
        if(n%i==0)
          sum+=i;
       }

     if(sum==n) return sum;

     return 0;
     }
这样子为什么还是有错误呢?到底该怎么改呢?
2012-09-22 10:18
胡振杰
Rank: 2
等 级:论坛游民
帖 子:41
专家分:63
注 册:2012-9-14
收藏
得分:0 
求解啊。。。。
2012-09-22 10:38
胡振杰
Rank: 2
等 级:论坛游民
帖 子:41
专家分:63
注 册:2012-9-14
收藏
得分:0 
四楼的。。那个,为什么还是不对???

2012-09-22 12:08
胡振杰
Rank: 2
等 级:论坛游民
帖 子:41
专家分:63
注 册:2012-9-14
收藏
得分:0 
回复 4楼 QQ007977
不对诶、、、、、
2012-09-22 12:08
胡振杰
Rank: 2
等 级:论坛游民
帖 子:41
专家分:63
注 册:2012-9-14
收藏
得分:0 
嗯嗯。。。谢谢各位,现在已经好了。。。哈哈。。真的很感谢诶。。。
2012-09-22 14:21
快速回复:这个求解“完数”的代码错误在哪里呢?
数据加载中...
 
   



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

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