OJ题目:click here~~
题目分析:输出第k个素数

依次类推。直到筛子为空时结束。
如有:
#include <stdio.h>
#include <string.h>
#include <math.h>
#include <iostream>
using namespace std ;
const int N = 1000000;
bool prime[N] ;
void initprime(){
    memset(prime, 1 , sizeof(prime)) ;
    prime[0] = prime[1] = 0 ;
    double t = sqrt(N) + 1 ;
    for(int i = 2;i < t;i++){
        if(prime[i]){
            for(int j = i + i;j < N;j += i)
                prime[j] = false ;
        }
    }
}
int main(){
    initprime();
    int k , t ;
    while(cin >> k){
        t = 0 ;
        for(int i = 0;i < N;i++){
            if(prime[i]){
                t++;
                if(t == k){
                    cout << i << endl ;
                    break ;
                }
            }
        }
    }
    return  0 ;
}
JD 题目1040:Prime Number (筛法求素数)
原文:http://www.cnblogs.com/wzjhoutai/p/7367995.html