1.创建前100位的素数表
根据算术基本定理,判断一个数x是否为素数可以用比它小的素数整除x,若都不能整除,则为素数。
#include<stdio.h>
int isPrime(int x,int knownPrime[],int numberofknownPrime);//由已知素数数组判断x是否为素数
int main()
{
int prime[100]={2};
int cnt=1;
int i=3;
while(cnt<=100){ //给数组输入素数
if(isPrime(i,prime,cnt)){ //判断i是否为素数
prime[cnt++]=i;
}
i++;
}
for(i=0;i<100;i++){ //输出素数表
printf("%d",prime[i]);
if((i+1)%5==0) printf("\n");
else printf("\t");
}
return 0;
}
int isPrime(int x,int knownPrime[],int numberofknownPrime)
{ int ret=1;
int i;
for(i=0;i<numberofknownPrime;i++){
if(x%knownPrime[i]==0){
ret=0;
break;
}
}
return ret;
}