练习一下输出1-1000的素数:
#include<iostream>
#include<iomanip>
#include<cmath>
using namespace std;
const int n=1000;
int main(){
int a[n];
int i,j;
for(i=0;i<n;i++) a[i]=1+i;
a[0]=0;
for(i=1;i<n;i++){
if(a[i]==0) continue;
for(j=i+1;j<n;j++) if(a[j]%a[i]==0) a[j]=0;
}
int count=0;
cout<<"1-"<<n<<"之间的素数:"<<endl;
for(i=0;i<n;i++)
if(a[i]!=0){
cout<<setw(6)<<a[i];
count++;
if(count%10==0) cout<<endl;
}
cout<<endl;
return 0;
}
将程序中的1000改成任意正数,重新编译,即可输出1到该数中的所有素数。