1610的最大质因数
1个回答

1610=2×5×7×23

1610的最大质因数:23

(不知道是不是分类分错了……)

C语言编程代码:

#include

int prime(int i) //判断素数

{

int j;

if(i<2)

return -1; //既不是素数也不是合数

for(j=2;j<=i/2;j++)

if(i%j==0)

return 0; //合数

return 1; //素数

}

int factor(int i) //分解质因数

{

int j,max=0;

if(prime(i)==0)

{

printf("%d=",i);

for(j=2;j<=i;)

{

if(i%j!=0) //不能被j整除,就让j自加1

{

j++;

}

else //能被j整除,就让i等于被除后的数

{

i=i/j;

printf("%d×",j);

if(max

max=j;

}

}

printf("b n"); //退格,把最后的“×”去掉

}

else

printf("%d不是合数,不能分解质因数.n",i);

return max;

}

main()

{

int max,n;

printf("请输入n");

scanf("%d",&n);

printf("分解质因数如下:n");

max=factor(n);

printf("最大质因数:%dn",max);

}