求100以内的素数

来源:互联网 发布:riesz表示定理知乎 编辑:程序博客网 时间:2024/04/20 05:40
#include<iostream>using namespace std;bool isPrime(int val){int i;for(i = 2; i < val; i++){if(val%i == 0){break;}}if(i == val)return true;elsereturn false;}void mark(int* arrays, int len, int val){//int i = 2;//int temp = 0;//while(temp < len){//temp = val*i;//if(temp < len){//arrays[temp] = -1;//}//i++;//}for(int i = 2,temp = 0; temp < len; i++,temp = val*i){arrays[temp] = -1;}}void markArray(int* arrays, int len){for(int i = 2; i < len; i++){if(isPrime(i)){arrays[i] = 1;mark(arrays,len,i);}else{arrays[i] = -1;}}}void getPrime(int* arrays, int len){int count = 0;for(int i = 2; i < len; i++){if(arrays[i] == 1){cout<<i<<" ";count++;}}cout<<endl<<"the total number"<<endl;cout<<count<<endl;}//void output(int* arrays, int len){//for(int i = 2; i < len; i++){//cout<<arrays[i]<< " ";//}//cout<<endl;//}void main(){int arrays[101] = {0};int len = sizeof(arrays)/sizeof(arrays[0]);markArray(arrays, len);getPrime(arrays, len);}

0 0
原创粉丝点击