1151:素数个数
时间限制: 1000 ms 内存限制: 65536 KB
提交数: 75544 通过数: 44475
【题目描述】
编程求2∼n2∼�(n�为大于22的正整数)中有多少个素数。
【输入】
输入n(2≤n≤50000)�(2≤�≤50000)。
【输出】
素数个数。
【输入样例】
10
【输出样例】
4
代码如下:
#include<bits/stdc++.h>
using namespace std;
//判断一个大于等于2的数是否是质数
bool isPrime(int n)
{
for(int i = 2; i <= sqrt(n); ++i)
if(n % i == 0)
return false;
return true;
}
int main()
{
int n, s = 0;//s:质数个数
cin >> n;
for(int i = 2; i <= n; ++i)
{
if(isPrime(i))
s++;
}
cout << s;
return 0;
}