判断完数(写出部分函数)
例如:本题要求实现一个函数,判断一个自然数是否是完数。如果一个自然数除自身之外的因子和等于它自己,则称该数为完数。例如 6 = 1 + 2 + 3;则6是完数。
函数接口定义:
在这里描述函数接口。:
int isPerfect (int x);
在这里解释接口参数。其中 x
是用户传入的参数。 x
的值不超过int
的范围且 x
大于0;如果 x
是完数,函数返回1,否则返回0。
裁判测试程序样例:
在这里给出函数被调用进行测试的例子:
#include <stdio.h>
int isPerfect(int x);
int main()
{
for (int i = 1; i <= 10000; i++)
{
if (isPerfect(i))
{
printf("%d\n", i);
}
}
return 0;
}
/* 请在这里填写答案 */
输入样例:
本程序无需输入。
输出样例:
在这里给出相应的输出。例如:
6
28
496
8128
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
C程序如下:
int isPerfect (int x)
{
int a = x;
int sum = 0;
for(int i = 1; i < x; i++)
{
if(x % i == 0)
{
sum += i;
}
}
return (sum == a)?(1):(0);
}