数素数 (20)

时间限制 1000 ms 内存限制 32768 KB 代码长度限制 100 KB 判断程序 Standard (来自 小小)
题目描述
令Pi表示第i个素数。现任给两个正整数M <= N <= 10000,请输出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

#include 
#include 

int isPrime(int n)
{
    int tmp = sqrt(n);
    for(int i = 2; i <= tmp; i++)
        if(n % i == 0)
            return 0;
    return 1;
}

int main(int argc, char **argv)
{
    int M, N;
    int count = 0;
    scanf("%d%d", &M, &N);
    for(int i = 2, k = 0; ; i++)
    {
        if(isPrime(i))
        {
            count++;
            if(count >= M && count < N)
            {
                printf("%d", i);
                k++;
                if(k % 10 == 0)
                    printf("\n");
                else
                    printf(" ");
            }
            if(count == N)
            {
                printf("%d", i);
                break;
            }
        }

    }

}

你可能感兴趣的:(PAT,PAT)