当前位置: 代码迷 >> C语言 >> 程序错误出在哪里??
  详细解决方案

程序错误出在哪里??

热度:140   发布时间:2006-04-08 18:58:00.0
程序错误出在哪里??

题目是求1到1000的完数,完数是一个数的平方等于他因子的和。如6的因子是1,2,3,6=1+2+3,所以6是完数
编程序如下:
#include<stdio.h>
void main()
{
int a,b,i,s=0;
for(a=2;a<=1000;a++)
{
for(i=1;i<a;i++)
{
b=a%i;
if(b==0) s=s+i;
}
if(s==a)
{printf("%d its factors are",a);
for(i=1;i<a;i++)
if(b==0) printf("%d ",i);
printf("\n");
}
}
}

搜索更多相关的解决方案: factors  include  

----------------解决方案--------------------------------------------------------
你说完数是一个数的平方等于他因子的和,
那又为为什么又举例说如6的因子是1,2,3,6=1+2+3,呢?

我想是因为你输错了吧?
今天没时间做了!

明天给你答案吧!

----------------解决方案--------------------------------------------------------
说错了,是一个数等于他的因子和
----------------解决方案--------------------------------------------------------
//题目是求1到1000的完数,完数是一个数等于他因子的和。如6的因子是1,2,3,6=1+2+3,所以6是完数
//编程序如下:
#include<stdio.h>
#include<math.h>
void main()
{
int a,i,s=0;
for(a=2;a<=1000;a++)
{
for(i=1;i<a;i++)
{
if(a%i==0)
s=s+i;
}
if(s==a)
{
printf("%d its factors are",a);
for(i=1;i<a;i++)
if(a%i==0) printf("%d ",i);
printf("\n");
}
}
}

----------------解决方案--------------------------------------------------------
你这不是和我的一样吗,多了一个math.h头文件
这个没有也没关系的,为什么要加个呢
我也试过,这个程序也不行啊,…………
----------------解决方案--------------------------------------------------------

#include<stdio.h>
main()
{
int a,b,i,s=0;
for(a=2;a<=1000;a++)
{
for(i=1;i<a;i++)
{
b=a%i;
if(b==0) s=s+i;
}
if(s==a)
{printf("%d\n",a);
}
else s=0;
}

getch();/*用WINTC的时候加上去就可以否则就不用*/
}


----------------解决方案--------------------------------------------------------
#include<stdio.h>
void main()
{
int a,i,s;
for(a=2;a<=1000;a++)
{ s=0;
for(i=1;i<a;i++)
if(a%i==0) s=s+i;
if(s==a)
{printf("%d its factors are",a);
for(i=1;i<a;i++)
if(a%i==0) printf("%d ",i);
printf("\n");
}
}
getch();
}

如上...

[此贴子已经被作者于2006-4-8 21:50:16编辑过]


----------------解决方案--------------------------------------------------------
好啊,不错的网站,顶
----------------解决方案--------------------------------------------------------
  相关解决方案