主要考慮格式問題。
每 10 個數字佔 1 行,其間以空格分隔,但行末不得有多餘空格。
行末沒有空格意味着從第一行到最後一行末尾都沒有空格,故以前n-m個目標素數輸出後再輸出最後一個目標素數。
//������
#include <cstdio>
int prime[10001];
void primeMtoN(int m, int n);
bool isPrime(int n); // �ж�һ�����Ƿ�Ϊ����
bool isPrime(int n){
if(n == 2 || n == 3) return 1;
for(int i = 2; i * i <= n; i++){
if(n % i == 0)
return 0;
}
return 1;
}
void primeMtoN(int m, int n){
int count = 0;
for(int i = 2; i <= 1500001; i++){//¼������
if(isPrime(i)){
count++;
prime[count] = i;
if(count > n)
break;
}
}
for(int i = m, nc = 1; i < n && nc < n - m + 2; i++ && nc++){ // �������
if(nc % 10 != 0)
printf("%d ", prime[i]);
if(nc % 10 == 0)
printf("%d\n", prime[i]);
}
printf("%d\n", prime[n]);
}
int main(){
int m, n;
scanf("%d%d",&m, &n);
primeMtoN(m, n);
return 0;
}