输入一个正整数,判断它是否为完数,
(如果一个数的除自身以外的所有约数之和等于这个数本身,则称为完数,例如6=1+2+3)
如果是,则输出1,否则输出0
#include<stdio.h>
void main(){
int m, n, sum = 0;
printf("请输入一个正整数:\n");
scanf("%d", &m);
for (n = 1; n <= m - 1; n++)
if (m % n == 0){
sum = sum + n; //1 3 6
}
if (m == sum) // 6
printf("1");
else
printf("0");
}
该程序用于检查输入的正整数是否为完数。通过遍历从1到该数减1的所有数,计算它们是否能整除输入的数并累加,最后判断总和是否等于输入的数。如果相等,则输出1,表示是完数;否则输出0,表示不是。

6924

被折叠的 条评论
为什么被折叠?



