uTank-木头
每一个你不满意的现在,都有一个你没有努力的曾经。

【题目连接】

令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 }

 

posted on 2015-04-30 17:52  uTank  阅读(263)  评论(0编辑  收藏  举报