C语言素数的几种判断方法
发布时间: 2014-04-27 16:38:09
#include<stdio.h>
#include<math.h>
main()
{
int i,n;
printf("请输入一个数:");
scanf("%d",&n);
for(i=2;i<n;i++)
if(n%i==0)
break;
if(i>=n)
printf("素数!");
printf("\n");
}
/*main()
{
int i,n,m;
printf("请输入一个整数:");
scanf("%d",&m);
n=(int)sqrt(m);
for(i=2;i<=n;i++)
if(m%i==0)
break;
if(i>n)
printf("素数!\n");
else
printf("不是素数!");
}*/
/*int p(int m)
{
int i,n=sqrt(m);
for(i=2;i<=n;i++)
if(m%i==0)
break;
if(i>n)
return 1;
else
return 0;
}
main()
{
int m;
for(m=1;m<=10;m++)
{
if(p(m))
printf("%d ",m);
}
printf("\n");
}*/
//3-100间所素数。
/*main()
{
int i,n;
for(n=3;n<=100;n++)
{
for(i=2;i<=n-1;i=i+1)
if(n%i==0)
break;
if(i>=n)
printf("%d\t",n);
}
}*/
/*main()
{
int i,m,j;
for(i=2;i<=10;i++)
{
m=sqrt(i);
for(j=2;j<=m;j++)
{
if(j%m==0)
break;
if (j>m) //加上这句,如果检查所有的j全部不能整除m,循环结束后,j一定大于m,这时的i才是素数
printf("%d",i);
}
}
}
/*
void main()
{
int i,j,n=0,xx[10];
for(i=1;i<10;i++)
{
for(j=2;j<i;j++)
if(i%j==0)
break;
if(j>=i) //保证i以下的每个数都不能被i整除
xx[n++]=i;
}
printf("1到10以内的所有素数如下\n");
for(i=0;i<n;i++)
printf(" %d ",xx[i]);
printf("\n 共有n=%d个素数 \n",n);
}
*/