因数是能将n整出的数字(例如6的因数为1 2 3 6)
因子是因数出去n本身以外的数字(例如6的因子是1 2 3)
先对概念做好判断 才能写清楚代码
完数就是n的因子之和等于n(例如6=1+2+3)
#include<stdio.h>
int main() {
int a,n,i,j,sum;
printf("判断完数\n");
printf("请输入需要判断的数字:");
scanf("%d",&a);//输入你的测试数据
sum=0;
for(i=1; i<a; i++) {
if(a%i==0) sum+=i;
else continue;
}
if(sum==a) printf("%d是完数,他的因子是:",a);
else printf("%d不是完数,他的因子是:",a);//判断该数是否为完数
for(i=1; i<a; i++) {
if(a%i==0)
printf("%3d",i);//一 一将其因子输出
else continue;
}
printf("\n");
}