C言語ブラシの質問ノート-因子分解

ここに画像の説明を挿入

トピック

正の整数を素因数に因数分解します。

:入力90、印刷し90=2*3*3*5ます。

ここに画像の説明を挿入

アイデア

nの素因数を分解するには、最初に最小素数kを見つけてから、次の手順を実行する必要があります。

(1)素数がnと正確に等しい場合は、素因数分解のプロセスが終了したことを意味し、印刷することができます。

(2)n≠kであるがnがkで割り切れる場合は、kの値を出力し、nをkで割った商を新しい正の整数you nとして、最初のステップを繰り返します。

(3)nがkで割り切れない場合は、kの値としてk + 1を使用し、最初の手順を繰り返します。

答え


#include <stdio.h>


int main()
{
    
    
    int n,i;

    printf("\n请输入一个数字:\n");

    scanf("%d",&n);

    printf("%d=",n);

    for(i=2;i<=n;i++)
    {
    
    
        while(n!=i)
        {
    
    
            if(n%i==0)
            {
    
    
                printf("%d*",i);
                n=n/i;
            }
             else
             {
    
    
                 break;
             }

        }
    }

    printf("%d",n);
}


サンプル出力

ここに画像の説明を挿入

ここに画像の説明を挿入

おすすめ

転載: blog.csdn.net/qq_21484461/article/details/124092067