描述
输入一个正整数n,求第n小的质数。
输入
一个不超过10000的正整数n。
输出
第n小的质数。
样例输入
10
样例输出
29
#include<stdio.h>
#include<math.h>
int isPrime(int num) //判断是否为质数的方法
{
if(num == 2) //如果为2直接返回
return 1;
int tmp = sqrt(num); //求num的平方根
int i;
for(i=2;i<=tmp;i++) //遍历
{
if(num%i == 0)
{
return 0;
}
}
return 1;
}
int main()
{
int n;
scanf("%d", &n);
int count = 0;
int i;
for(i=2;i<=10000;i++)
{
if(isPrime(i)==1) //如果是质数,则count++
{
count++;
}
if(count==n) { //输出第n小的质数,等count==n则查到结果,输出i
printf("%d",i);
return 0;
}
}
return 0;
}