C言語で数のすべての約数を求めるには?

ループを使用して、与数値のすべての因数を取得します。

まず、求めたい因数の数値を表す整数変数 num を定義する必要があります。

その後、1からnumまでをループで回り、各数値がnumの約数かどうかを判定する。判定方法は、num % i == 0が成り立つかを調べる。

iはnumの約数なので、出力したり配列に格納したりできます。

最終的には、ループが終了すると得られた配列が、num のすべての因子となる。

下記にサンプルコードを示します。

#include <stdio.h>

int main() {
    int num;
    printf("请输入一个整数:");
    scanf("%d", &num);
    
    printf("%d的所有因子是:", num);
    for (int i = 1; i <= num; i++) {
        if (num % i == 0) {
            printf("%d ", i);
        }
    }
    
    return 0;
}

プログラムを実行後、整数を一つ入れると、プログラムはそこの整数の全部の因数をアウトプットする。例えば、6と入れると、1 2 3 6をアウトプットする。

bannerAds