将数分为素数和非素数两类。
# include <stdio.h>
int sushu(int n)
{
int k=0,m=0,i;
for(i=2;i<=n/2;i++)
{
k+=1;
if(n%i==0)
m+=0;
else
m+=1;
}
if(m==k)
return 1;
}
int fenjie(int n)
{
int i;
printf("%d=",n);
for(i=2;i<=n;i++)
while(n!=i)
if(n%i==0)
{
printf("%d*",i);
n=n/i;
}
else
break;
printf("%d ",n);
}
void main()
{
int n,i,m=0,x=1;
printf("对1到100整数进行分解。\n素数:\n");
for(i=2;i<100;i++)
if(sushu(i)==1)
{
printf("%d=%d*%d ",i,i,x);
m=m+1;
if(m%5==0)
printf("\n");
}
printf("\n非素数:\n");
for(i=2;i<100;i++)
if(sushu(i)!=1)
{
fenjie(i);
m=m+1;
if(m%5==0)
printf("\n");
}
printf("\n");
}