标签:
令Pi表示第i个素数。现任给两个正整数M <= N <= 104,请输出PM到PN的所有素数。
输入格式:
输入在一行中给出M和N,其间以空格分隔。
输出格式:
输出从PM到PN的所有素数,每10个数字占1行,其间以空格分隔,但行末不得有多余空格。
输入样例:
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
提交代码:
1 #include <stdio.h> 2 #include <math.h> 3 4 int isPrime(unsigned int num) 5 { 6 int i, s; 7 8 s = sqrt(num); 9 for(i = 2; i <= s; i++) 10 { 11 if(num % i == 0) 12 return 0; 13 } 14 return 1; 15 } 16 17 void test(void) 18 { 19 unsigned int n, m; 20 int num, cnt; 21 int pm; 22 23 scanf("%d %d", &n, &m); 24 //if(n < m && n > 0 && m > 0) 25 { 26 cnt = 1; 27 num = 2; 28 pm = 1; 29 while(cnt <= m) 30 { 31 if(isPrime(num)) 32 { 33 if(cnt >= n) 34 { 35 printf("%d", num); 36 if(pm != m-n+1) 37 { 38 if(pm % 10 == 0) 39 printf("\n"); 40 else 41 printf(" "); 42 } 43 pm++; 44 } 45 cnt++; 46 } 47 num++; 48 } 49 } 50 } 51 52 int main(void) 53 { 54 test(); 55 return 0; 56 }
PAT (Basic Level) Practise:1013. 数素数
标签:
原文地址:http://www.cnblogs.com/utank/p/4469520.html