数素数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数素数相关的知识,希望对你有一定的参考价值。

题目描述
令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<stdio.h> 
#include<stdlib.h>
#include<math.h>
#include<stdbool.h>
bool is_prime(int n){
    if (n <= 3){
        return n > 1;
    }
    int i;
    for (i = 2; i<= sqrt(n); i++){
        if (n%i == 0){
            return false;
        }
    }
    return true;
}
int main()
{
    int start,end,i=0,num=0;
    scanf("%d %d",&start,&end);
    int data[end];
    for(i=2;num<end;i++)
      if(is_prime(i)){
          data[num++]=i;
      }
    for(i=start-1;i<end;i++)
      if(i<end-1){
          if((i-start+2)%10==0)
            printf("%d\n",data[i]);
          else
          printf("%d ",data[i]);
      }
      else
        printf("%d\n",data[i]);
    return 0;
}


以上是关于数素数的主要内容,如果未能解决你的问题,请参考以下文章

05:素数回文数的个数

PAT乙级 1013. 数素数 (20)

数素数 (20)

C语言问题 【函数与过程】回文素数

素数筛选和合数分解

这个代码片段有啥作用?