C语言:判断一个数是否是完数?
完数:一个正整数m的所有小于m的不同因子(包括1)加起来正好等于m本身(不包括m自身),而1没有真因。
#include<stdio.h>
int main ()
{
int m;
printf("Input m:\n");
scanf("%d", &m);
if (m > 1)
{
int i, sum = 1;
for (i = 2; i < m; i++)
{
if (m% i == 0)
sum =sum+ i;
}
if (sum == m)
printf("m is perfect figure");
else
printf("m is not perfect figure");
}
else
printf("m is not perfect figure");
}