下面的关于两数之间求素数的个数和的程序哪错了啊
#include<stdio.h>int main()
{
int p (int a);
int a,b,s,i;
while(scanf("%d%d",&a,&b)==2)
{
s=0;
for(i=a;i<=b;i++)
if(p(i)==1)
s++;
printf("%d\n",s);
}
return 0;
}
int p (int a)
{
int i;
if(a<2)
return 0;
for(i=2;i*i<=a;i++)
if(a%i==0)
return 0;
return 1;
}