第1个回答 推荐于2017-12-16
#include<stdio.h>
#include<math.h>
int isprime(int n)//判断整数n是否为素数
{
int i;
for(i=2; i<=sqrt(n); i++)
{
if(n%i == 0)
{
return 0;
}
if(i>sqrt(n))
{
return 1;
}
}
return 1;
}
int main()
{
int i,m;
printf("输入整数m:");
scanf("%d",&m);
for(i=2; i<=sqrt(m); i++)
{
if(m%i == 0)
{
if(isprime(i))
{
printf("%d ",i);
m /= i;
i = 1;
}
}
}
if(i>sqrt(m))
{
printf("%d ",m);
}
return 0;
}
回复:
k=x;n":\),i);.h>
x=x/,k;i++)
if(x%i==0)
{
printf("
while(scanf("n"),&x))
{
printf("
printf(",i;n"stdio;请输入;);请输入;n":\
}
printf("%d"
main()
{
int x;%d "
if(x==0)
break;分解质因数:\k;
printf(";);i<
for(i=2;\i--/参考下~~
#include </
回复:
/ /math;n is prime"/,isprime(n));k)
return "%d"n is not prime"/ /
scanf(",&n),改%s
}
char* isprime(int m) //.h>#include<逗号改分号
if(m%i==0)
break;改char *
{
int i;i< //去掉int;
if(i>.h>
void main()
{
char* isprime(int m);i++) /改char *
int n;
#include<// //return改printf
else
return "int加括号
for(i=2;改逗号
printf(",k;%s" /;去掉m
k=(int)sqrt(m);=k; /stdio;
回复:
k1=sqrt(m);
for(k=2;:%5ld\,&i););
}
main()
{
long i;
else printf("n"
#include<#include<k<k++)
if(m%k==0){n=0;%d"=k1;n"math;YES 素数是;
int fun(long m)
{int n=1;NO\}
return(n);.h>,i);break;
if(fun(i)) printf(",k1;
scanf(",k.h>stdio本回答被提问者和网友采纳