输入一个整数n(2≤n≤10000),对其分解质因数。 输出样例: 120=2*2*2*3*5 c语言

如题所述

C语言实现一个整数的质因数分解,参考代码如下:

#include "stdio.h"
int main()
{
    int n,i,fac=1;
    scanf("%d",&n);
    if(n<2||n>10000)
        return 0;
    printf("%d=",n);
    while(n>1) {
        for(i=2; i<=n; i++)
            if(n%i==0) {
                fac=i;
                break;
            }
        if(n!=fac)
            printf("%d*",fac);
        else
            printf("%d",fac);
        n/=fac;
    }
    return 0;
}

追答

运行结果如下:

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-04-24
#include <stdio.h>
int main()
{
     int n,i;
     printf("\nplease input a number:\n"); 
     scanf("%d",&n);  
     printf("%d=",n); 
     if(n>=2&&n<=10000)
 {
 for(i=2;i<=n;i++)
 while(n!=i)
 {
 if(n%i==0)
{
printf("%d*",i);
n=n/i;
}
else
break;
 }
 }
else
return 0;
printf("%d",n);
}

相似回答