题目大意:
n代表下一行要输入数字的个数,并在这些数字中找素数的个数。
#include<stdio.h>
#include<math.h>
bool sushu(int n)
{
int i;
if(n==2||n==3)
return true;
else if(n<2)
return false;
else
{
for(i=2;i<=sqrt(1.0*n);i++)//这里sqrt(1.0*n)就算了一次,
//如果判断条件改为i*i<=n,这里的i*i就会做sqrt(n)次,每次循环都要算一次,会超时
if(n%i==0)
return false;
return true;
}
}
int main(){
int m,n,i,count;
while(scanf("%d",&m)!=EOF){
count=0;
while(m--){
scanf("%d",&n);
if(sushu(n))
count++;
}
printf("%d\n",count);
}
}