素数个数
题目描述
编程求 2 2 2 ~ n ( n n(n n(n 为大于 2 2 2 的正整数)中有多少个素数。
输入格式
输入 n ( 2 ≤ n ≤ 50000 ) n(2 \le n \le 50000) n(2≤n≤50000)。
输出格式
素数个数。
样例 #1
样例输入 #1
10
样例输出 #1
4
#include<stdio.h>
#include<math.h>
#include<stdio.h>
#include<stdbool.h>
#include<string.h>
//求素数的个数
bool num[1000001];
int main(){
int i,j,n,sum=0;
for(i=2;i<=1000;i++){
for(j=2;j*i<=1000001;j++){
num[i*j]=1;
}
}
scanf("%d",&n);
for(i=2;i<=n;i++){
if(num[i]==0){
sum++;
}
}
printf("%d\n",sum);
return 0;//CSDN:旺旺的碎冰冰~
}