
C语言 输入一个自然数N 求第N个素数是多少
3个回答
展开全部
#include<stdio.h>
main()
{
int m,n,s=2,j=0;
register int i;
printf("please input a number:n=");
scanf("%d",&n);
while(1)
{
for(i=2;i<=s-1;i++)
{
if(s%i==0)
{
m=s;
break;
}
}
if(m!=s)
j++;
if(n==j)
{
printf("%d\n",s);
break;
}
s++;
}
}
满意请采纳
main()
{
int m,n,s=2,j=0;
register int i;
printf("please input a number:n=");
scanf("%d",&n);
while(1)
{
for(i=2;i<=s-1;i++)
{
if(s%i==0)
{
m=s;
break;
}
}
if(m!=s)
j++;
if(n==j)
{
printf("%d\n",s);
break;
}
s++;
}
}
满意请采纳
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <stdlib.h>
#include <stdio.h>
#include <math.h>
int prime[1000];
void compute(int n){
prime[1] = 2;
prime[2] = 3;
for (int i=3; i<=n; i++) {
for(int num = prime[i-1] + 2; ; num +=2) {
int max = (int)sqrt(num) +1;
int found = 0;
for(int k=1; k<=i; k++) {
if(num % prime[k] == 0) break;
if( prime[k] >= max) {
found = 1;
break;
}
}
if(found==1) {
prime[i] = num;
break;
}
}
}
}
void main() {
int n;
scanf("%d", &n);
compute(n);
printf("%d\n", prime[n]);
}
#include <stdio.h>
#include <math.h>
int prime[1000];
void compute(int n){
prime[1] = 2;
prime[2] = 3;
for (int i=3; i<=n; i++) {
for(int num = prime[i-1] + 2; ; num +=2) {
int max = (int)sqrt(num) +1;
int found = 0;
for(int k=1; k<=i; k++) {
if(num % prime[k] == 0) break;
if( prime[k] >= max) {
found = 1;
break;
}
}
if(found==1) {
prime[i] = num;
break;
}
}
}
}
void main() {
int n;
scanf("%d", &n);
compute(n);
printf("%d\n", prime[n]);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include "stdio.h"
int isprime(int n)
{
for(int i=2;i<=n/2;i++)
if(n%i==0)
return 0;
return 1;
}
void main()
{
int cnt=0;
int N;
int i;
scanf("%d",&N);
for(i=2;;i++)
{
if(isprime(i))
cnt++;
if(cnt==N)
{
printf("%d\n",i);
return;
}
}
}
int isprime(int n)
{
for(int i=2;i<=n/2;i++)
if(n%i==0)
return 0;
return 1;
}
void main()
{
int cnt=0;
int N;
int i;
scanf("%d",&N);
for(i=2;;i++)
{
if(isprime(i))
cnt++;
if(cnt==N)
{
printf("%d\n",i);
return;
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询