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

380
2024/5/1 18:30:17
栏目: 编程语言
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

完数是指一个数恰好等于其所有因子(包括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;
}

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

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: 怎么使用C语言实现圣诞树