描述
输入一个正整数n,求第n小的质数。
输入
一个不超过10000的正整数n。
输出
第n小的质数。
样例输入
10
样例输出
29
#include<stdio.h>
#include<math.h>
int main()
{
int n,j,m;
long i;
int flag,count=0;
scanf("%d",&n);
for(i=2;;i++)//不能从一开始,1不是质数
{
flag=0;
for(j=2; j<=sqrt(i); j++)//sqrt(i)表示i的算术平方根(减少循环次数)
{
m=i%j;
if(m==0)//判断是不是质数;如果能除的尽不是质数
{
flag=1;
break;
}
}
if(flag==0)//未被标记,说明这是一个质数,则计数器加一
{
count++;
}
if(count==n)//判断是不是第n小的质数
{
printf("%d",i);
break;//找到后跳出循环
}
}
return 0;
}