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

来源:百度知道 编辑:UC知道 时间:2024/09/24 08:30:44
要求判断一个数是否为完数用函数来实现。

根据完全数的定义,先计算所选取的整数a(a的取值1~1000)的因子,将各因子累加于m,若m等于a,则可确认a为完全数。
*程序说明与注释
#include<stdio.h>
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

百度