首页 > 试题广场 >

返回小于 N 的质数个数

[编程题]返回小于 N 的质数个数
  • 热度指数:4576 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 64M,其他语言128M
  • 算法知识视频讲解
请考虑性能

输入描述:
一个整数N


输出描述:
小于N的质数数量
示例1

输入

10

输出

4

说明

N=10,质数有 [2, 3, 5, 7]

备注:
0、1 不属于质数。
#include<stdio.h>
#include<math.h>
int main()
{
    int N=0,count=0,i,j;
    scanf("%d",&N);
    for(i=2;i<=N;i++)
    {
        int k=i;
        for(j=2;j<=sqrt(k);j++)
        {
            if(k%j==0)
                break;
        }
        if(j>sqrt(k))
        {
            count++;
        }
    }
    printf("%d\n",count);
    return 0;
}

发表于 2022-07-15 13:00:49 回复(0)