📄 susu.c
字号:
//任意合数分解成质数程序:
#include"stdio.h"
#include"math.h"
int count;
void susu(int n,int *p)
{
int num,i,m,b[10000],num1=0;
for(num=2;num<=n;num++)
{
m=1;
for(i=2;i<num;i++)
{
if(!(num%i))
{m=0;}
}
if(m)
{ p[num1]=num;
num1++;
}
}
for(i=0;i<num1;i++)
b[i]=p[num1-1-i];
for(i=0;i<num1;i++)
p[i]=b[i];
}
void find(int n,int *pp,int *pr)
{
if(n==1)
{ *pr=1;
count++;
}
else
{
while(1)
{
if(n%*pp==0) break;
pp++;
}
if(n<*pp) find(n,pp+1,pr);
else
{
*pr=*pp;
count++;
n/=*pp;
find(n,pp,pr+1);
}
}
}
void main()
{
int i,n,result[100],a[10000],*p=a;
printf("please input a number");
scanf("%d",&n);
susu(n,p);
find(n,p,result);
printf("the result is: %d=",n);
for(i=0;i<count;i++)
{if(result[i]==1)
printf("%d",result[i]);
else
printf("%d*",result[i]);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -