判断101-200之间有多少个素数,并输出所有素数。

2025-01-27 14:34:13
推荐回答(2个)
回答1:

#include"math.h"

main(){

 int a,s,i,q,p=0;

 printf("101-200以内的素数:\n");

 for (a=101;a<=200;a+=2)

 { q=1;  s=sqrt(a);

  for(i=2;i<=s;i++)if(a%i==0){q=0;break;}

  if(q==1){p++;printf("%d\n",a);} 

 }  printf("素数的个数是:%d\n",p);

}

回答2:

#include"stdio.h"
#include"math.h"
int main()
{
int a,i,q,p=0;
float s;////////////////////////////////开方的结果不是整数
printf("101-200以内的素数:\n");
for (a=101;a<=200;a++)

{ q=0;
s=sqrt(a);
for(i=2;i<=s;i++)
{
if(a%i!=0)
q++;
}
if(q==(int(s-1)))////////////////////////////应该是-1而不是-2
{
p++;
printf("%d\n",a);
}

}
printf("素数的个数是:%d\n",p);
return 0;
}