20.综合应用分解质因数

/**/
#include "stdio.h"
void main()
{
int n;
int k=2;
int m;

m=0;
printf("请输入一个正整数:");
nn:m=scanf("%d",&n);

if(m!=1||n<1)
{
printf("数据输入有误,请重输:");
fflush(stdin);
goto nn;
}

printf(" %d=",n);

while(n!=1)//只要n的值不为1,即最后一个质数输出之后
{
if(n%k==0)
{
if(n==k)//如果是最一个质数
printf("%d",k);
else
printf("%d×",k);
n=n/k;
k=2;
}
else
k++;
}
do//只要n的值不为1,即最后一个质数输出之后
{
if(n%k==0)
{
if(n==k)//如果是最一个质数
printf("%d",k);
else
printf("%d×",k);
n=n/k;
k=2;
}
else
k++;
}while(n!=1);
}

原文地址:https://www.cnblogs.com/wyj1212/p/9006513.html