输入:
5 27
输出:
11 13 17 19 23 29 31 37 41 43
47 53 59 61 67 71 73 79 83 89
97 101 103
代码如下,主要问题是注意输出格式。。。
#include<stdio.h>
#include<math.h>
const int maxn = 1e4+1;
const int INF = (1<<30)-1;
int prime[maxn]={0};
bool isPrime(int n){
if(n<=1) return false;
int sqr = (int) sqrt(n*1.0);
for(int i=2;i<=sqr;i++){
if(n%i==0) return false;
}
return true;
}
void find_prime(int n){
int pNum = 0;
for(int i=2;i<=INF;i++){
if(isPrime(i)) {
prime[pNum++] = i;
if(pNum==n) return ;
}
}
}
int main(){
int M, N;
scanf("%d %d", &M, &N);
find_prime(N);
int count = -1;
for(int i=M-1;i<maxn&&prime[i]!=0;i++){
printf("%d", prime[i]);
count++;
if(count%10<9&&count<N-M) printf(" ");
if(count%10==9) printf("\n");
}
return 0;
}