#include<conio.h>
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
int fun(int lim, int aa[MAX])
{
int i,j,k=0;
for(i=2;i<=lim;i++) /*求出小于或等于lim的全部素数*/
{ for(j=2;j<i;j++)
if(i%j==0) break;
if(j>=i)
aa[k++]=i; /*将求出的素数放入数组aa中*/
}
return k; /*返回所求出的素数的个数*/
}
void main()
{
FILE *wf;
int limit,i,sum;
int aa[MAX];
system("CLS");
printf("输入一个整数:");
scanf("%d",&limit);
sum=fun(limit,aa);
for(i=0;i<sum;i++)
{
if(i%10==0&&i!=0) /*每行输出10个数*/
printf("\n ");
printf("%5d ",aa[i]);
}
system("pause");
素数又称质数,除了只能被1和自身整数意外,不在有其它因子;最小的素数是2;
举例:若判定一个整数m所包含的素数,则判断2到m-1之间整数能否被2到m-1之间的整数整除,原因是除1和自身不再能被其它整数整除。
另外for(j=2;j<i;j++) if(i%j==0) break;从2到之间若有能被整除的数,直接退出本次循环;
if(j>=i) //j一直累加不中断的话j++在最后会加1,使j==i;