输入一个正整数n, 判断1~n中素数的个数
判断素数可以只判断到√n
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <stdbool.h>
bool JudgePrime(int n)
{
int i;
bool is_Prime = true;
if(n < 2)
is_Prime = false;
else
{
for(i=2; i<=sqrt(n); i++)
{
if(n%i == 0)
{
is_Prime = false;
break;
}
}
}
return is_Prime;
}
int main()
{
int n, i, cnt = 0;
scanf("%d", &n);
for(i=2; i<=n; i++)
if(JudgePrime(i))
cnt++;
printf("%d", cnt);
return 0;
}
吃了很多亏在这上面,就写在这吧。