令Pi表示第i个素数。现任给两个正整数M <= N <= 104,请输出PM到PN的所有素数。
输入格式:
输入在一行中给出M和N,其间以空格分隔。
输出格式:
输出从PM到PN的所有素数,每10个数字占1行,其间以空格分隔,但行末不得有多余空格。
输入样例:
5 27
输出样例:
11 13 17 19 23 29 31 37 41 4347 53 59 61 67 71 73 79 83 8997 101 103
#include<stdio.h> #include<math.h> const int maxn=10010; int s[maxn]; bool is_prime(int n){ if(n<=1) return false; int sqr=(int )sqrt(1.0*n); for(int i=2;i<=sqr;i++){ if(n%i==0) return false; } return true; } int main(){ int n,m; scanf("%d%d",&n,&m); int k=0; for(int i=2;i<maxn;i++){ if(is_prime(i)==true||i==2){ s[k]=i; k++; } if(k==m) break; } int count=0; for(int i=n-1;i<m;i++){ printf("%d",s[i]); count++; if(count==0||count==m-1) printf("\n"); else printf(" "); } return 0; }