利用C语言中的函数求1000以内的完数

要求判断一个数是否为完数用函数来实现。
2024-11-19 03:40:27
推荐回答(5个)
回答(1):

根猜睁山据完全数的定义,先计算所选取的整数a(a的取值1~1000)的因子,将各因子累穗中加于m,若m等于a,则可确认a为完全数。
*程序说明与注释
#include
void main()
{
int a,i,m;
printf("There are following perfect numbers smaller than 1000:\\n");
for(a=1;a<1000;a++) /*循环控制选取1~1000中的各数进行判断*/
{
for(m=0,i=1;i<=a/2;i++) /*计算a的因子,并将各因子之和m=a,则a是完全数输出*/
if(!(a%i))m+=i;
if(m==a)
printf("%4d ",a);
}
printf("早薯\\n");
}
*运行结果
TThere are following perfect numbers smaller than 1000:
6 28 496

回答(2):

根据完全数的定基裂腊义,先计算搏滑所选取的整数a(a的取值1~1000)的因子,将各因子累加于m,若m等于a,则可确认a为完全数。
*程序说明与注释
#include
void
main()
{
int
a,i,m;
printf("There
are
following
perfect
numbers
smaller
than
1000:\\n");
for(a=1;a<1000;a++)
/*循环源缺控制选取1~1000中的各数进行判断*/
{
for(m=0,i=1;i<=a/2;i++)
/*计算a的因子,并将各因子之和m=a,则a是完全数输出*/
if(!(a%i))m+=i;
if(m==a)
printf("%4d
",a);
}
printf("\\n");
}
*运行结果
TThere
are
following
perfect
numbers
smaller
than
1000:
6
28
496

回答(3):

#include
int fun(int n)
{
int sum=0,i;
for(i=1;i<袭世吵n;i++)
if(n%i==0)
sum+=i;
if(sum==n)
return 1;
else
return 0;
}
int main()
{
int m;
for(m=1;m<1000;m++)
{
if(fun(m)==1)
printf("%d\拍侍返州n",m);
}
}

回答(4):

百度

回答(5):

query取得iframe中元素的几种方法
在iframe子页面获取父脊雹歼页面樱冲元素
代码肆没如下:
$(