数组是构造类型数据,指一组同类型数据组成的序列,用一个统一的数组名标识这一组数据。
用下标来只是数组中元素的序号。
C语言中数组下标从0开始,定义方位为:类型标示符数组名[元素个数]。
求素数的方法很多,本来采用经典算法——eratasthenes筛选法,思路为:
1、取最小的数2,并声明它是素数,同时筛去它及它的倍数。
2、取未筛去数中最小的数,并声明它是素数,同时筛去它及它的倍数。
3、重复步骤2至筛中无数,得到所有的素数。
#include "stdio.h"
/* 范围*/
#define M 200
/* 奇数的个数*/
#define N ((M+1)/2)
void main(void)
{
int i,j,a[N];
a[0] = 2;
for(i=1;i<(N-1);i++) /* 初始数组实现第一步筛选*/
a[i] = 2*i+1;
for(i=1;i<(N-1);i++) /* 第二部筛选*/
if(a[i]!=0)
for(j=i+1;j<N;j++)
if(a[j]%a[i]==0) /* 倍数时置零晒去*/
a[j]=0;
printf("\nThe primer are [2-%d]:\n",M);
for(i=0,j=0;i<N;i++) /* 显示得到素数*/
{
if(a[i]!=0)
{
printf("%5d",a[i]);
if((++j)%10==0) /* 十个数换行*/
printf("\n");
}
}
getch();
}
运行结果:。