1151:素数个数

Posted 月下诺

tags:

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

编程求2~n(n为大于2的正整数)中有多少个素数。

这是题目

#include<iostream>
#include<cmath>
using namespace std;
bool judge(int x);
int main()
{
    int n;
    int i;
    int sum=0;
 
    cin>>n;
    for(i=2; i<=n; i++)
        if(judge(i))//若是素数
            sum++;//累加素数个数
    cout<<sum<<endl;
 
    return 0;
}
bool judge(int x)//判断素数
{
    int i=2;
    while(i<=floor(sqrt(x))&&(x%i)!=0)
        i++;
    if(i>floor(sqrt(x)))
        return true;
    return false;
}

这是我的代码

在其中我用了一个bool型变量进行对素数的判别,

因为这个题是对个数进行统计所以我在main函数中用for循环打了一个计数器

就是sum,最后输出sum就行了

这就是这个题了

 

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

ZZNUOJ_用C语言编写程序实现1151:组合三位数之二(附完整源码)

新手求教 c语言素数判断算法

C语言求范围之内素数的和与个数?

求C语言中 判断素数的 代码!!!!!

代码实现:判断101-200之间有多少个素数(质数),并输出所有素数。 程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。

CodeForces - 1151C