青少年编程知识记录 codecoming

第n小质数

【题目描述】

蒜头君有一个正整数 n,他想求第 n小的质数。

【输入格式】

一个不超过 10000的正整数 n。

【输出格式】

第 n 小的质数。

输出时每行末尾的多余空格,不影响答案正确性

【样例输入】

10

【样例输出】

29

【题解说明】

从第一个开始列举,前n个就第n小的那个。第一个最小,第二个次小

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include<cstdio>
#include<cmath>
int isprime(int m) { //判断一个数是不是质数
    int i;
    for(i=2; i<=sqrt(m); i++)
        if(m%i==0)
                return 0;
    return 1;
}
int main() {
    int n,sum=0;//定义第n小,质数累加
    scanf("%d",&amp;n);
    for(int i=2; ;i++)
    {
        if( isprime(i)==1)
            sum++;
        if(sum==n)  //等于第n小的时候输出
        {
            printf("%d\n",i);
            return 0;  
        }      
    }
    return 0;
}



.jztagtree{max-height:85vh;right:0px}.jzDown{top:10vh}.jztagtree li a{background-color:#448EF6}.jztagtree li a:before{border-right:10px solid #448EF6}.jztagtree li a:hover{background:#0045a6}.jztagtree li a:hover::before{border-right:10px solid #0045a6}

    $("#jztoc").toc({content: ".single", headings: "h1,h2,h3"});

    作者:亿万年的星光 分类:题解目录 浏览: