溫馨提示×

c語言怎么輸出完數(shù)及其因子

小億
110
2024-05-28 10:19:09
欄目: 編程語言

一個完數(shù)是指一個數(shù)恰好等于它的因子(除了它本身)之和。以下是一個C語言程序,用于輸出小于給定數(shù)的所有完數(shù)及其因子:

#include <stdio.h>

void printFactors(int num) {
    int sum = 0;
    printf("%d的因子有:", num);
    for (int i=1; i<num; i++) {
        if (num % i == 0) {
            printf("%d ", i);
            sum += i;
        }
    }
    printf("\n");
    if (sum == num) {
        printf("%d是一個完數(shù)\n", num);
    }
}

int main() {
    int limit;
    printf("請輸入一個正整數(shù):");
    scanf("%d", &limit);

    printf("小于%d的完數(shù)有:\n", limit);
    for (int i=1; i<limit; i++) {
        printFactors(i);
    }

    return 0;
}

使用上述程序,用戶可以輸入一個正整數(shù),程序?qū)⒋蛴〕鲂∮谠摂?shù)的所有完數(shù)以及它們的因子。您可以根據(jù)需要修改程序,使其輸出大于給定數(shù)的完數(shù)。

0