c语言求完数,完数就是各个因子之和等于它本身的数,如6=1+2+3,是 完数。
帮忙看看为什么运行时多输出了24,24不是完数,但我不知道程序哪里错了#include<stdio.h>intmain(){inta,i,b;for(a=2;a<=100...
帮忙看看为什么运行时多输出了24,24不是完数,但我不知道程序哪里错了
#include<stdio.h>
int main()
{
int a,i,b;
for(a=2;a<=1000;a++)
{
b=0;
for(i=1;i<a;i++)
{
if(a%i==0)
{
b=b+i;
if(a==b)
{
printf("完数是%d=",b);
for(i=1;i<a;i++)
if(a%i==0)
printf("%d ",i);
}
}
}
}
return 0;
} 展开
#include<stdio.h>
int main()
{
int a,i,b;
for(a=2;a<=1000;a++)
{
b=0;
for(i=1;i<a;i++)
{
if(a%i==0)
{
b=b+i;
if(a==b)
{
printf("完数是%d=",b);
for(i=1;i<a;i++)
if(a%i==0)
printf("%d ",i);
}
}
}
}
return 0;
} 展开
1个回答
展开全部
#include<stdio.h>
int main()
{
int a,i,b;
for(a=2;a<=1000;a++)
{
b=0;
for(i=1;i<a;i++)
{
if(a%i==0)
{
b=b+i;
}
}
if(a==b)
{
printf("完数是%d=",b);
for(i=1;i<a;i++)
if(a%i==0)
printf("%d ",i);
}
}
return 0;
}
是你的括号有问题;括号的位置,用法;不能只看左半括号等于右半括号!
有什么记得追问。。
int main()
{
int a,i,b;
for(a=2;a<=1000;a++)
{
b=0;
for(i=1;i<a;i++)
{
if(a%i==0)
{
b=b+i;
}
}
if(a==b)
{
printf("完数是%d=",b);
for(i=1;i<a;i++)
if(a%i==0)
printf("%d ",i);
}
}
return 0;
}
是你的括号有问题;括号的位置,用法;不能只看左半括号等于右半括号!
有什么记得追问。。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询