这样也能找出素数(迟到的博文)
/* * Copyright (c) 2012, 烟台大学计算机学院 * All rights reserved. * 作 者: 张浩 * 完成日期:2012 年 11月28日 * 版 本 号:v1.0 * 输入描述: 略 * 问题描述: 略 * 程序输出:略 * 问题分析: 略 * 算法设计: */#include<iostream>#include<iomanip>using namespace std;int main (void){const int M=200;const int N=((M+1)/2);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;cout<<"2-100之间的所有的素数为:\n";for(i=0,j=0;i<N;i++)//显示得到的素数{if(a[i]!=0){cout<<setw(5)<<a[i];//输出素数m,字段宽度为5j++; //n用来累计输出素数的个数if(j%10==0) cout<<endl;//输出10}}return 0;}
运行结果:
心得体会:我只是忘记发表了,现在才想起来!!