c语言

c语言中如何判断一个数是不是完数

小亿
257
2024-05-16 18:30:17
栏目: 编程语言

完数是指一个数恰好等于其所有因子(包括1但不包括自身)之和的数。要判断一个数是否是完数,可以通过计算其所有因子之和来实现。

以下是一个判断一个数是否是完数的C语言代码示例:

#include <stdio.h>

int isPerfectNumber(int num) {
    int sum = 0;
    for (int i = 1; i <= num/2; i++) {
        if (num % i == 0) {
            sum += i;
        }
    }
    if (sum == num) {
        return 1; // 是完数
    } else {
        return 0; // 不是完数
    }
}

int main() {
    int num;
    printf("请输入一个整数:");
    scanf("%d", &num);

    if (isPerfectNumber(num)) {
        printf("%d 是完数。\n", num);
    } else {
        printf("%d 不是完数。\n", num);
    }

    return 0;
}

运行该代码,输入一个整数,程序会判断该整数是否是完数并输出结果。

0
看了该问题的人还看了