#include <stdio.h>
int ret=1;
int isprime(int x);
int main()
{
int a,b;
scanf("%d %d",&a,&b);
int i;
int cnt=0;
while(scanf("%d %d\n",&a,&b)!=EOF){
for(i=a;i<=b;i++){
if(isprime(i)){
cnt++;
}
}
printf("%d\n",cnt);
}
return 0;
}
int isprime(int x){
int i;
for(i=2;i<x-1;i++){
if(x%i==0){
ret=0;
break;
}
}
}
修改如下,供参考:
#include <stdio.h>
//int ret=1;
int isprime(int x);
int main()
{
int a,b;
//scanf("%d %d",&a,&b);
int i;
int cnt=0;
while(scanf("%d %d",&a,&b)!=EOF){//while(scanf("%d %d\n",&a,&b)!=EOF){
cnt = 0;
for(i=a;i<=b;i++){
if(isprime(i)){
cnt++;
}
}
printf("%d\n",cnt);
}
return 0;
}
int isprime(int x){
int i,ret=1;
if(x<2) ret=0;
for(i=2;i<x-1;i++){
if(x%i==0){
ret=0;
break;
}
}
return ret;
}