求绝对素数,这段代码有什么错误请问

img

img


求绝对素数,请问这段代码有什么问题,输入60000后没有输出

供参考:

img

img


源程序:

#include "stdio.h"
#include "math.h"
long long IsPrime(long long n)
{
    int i,isPrime=1;
    for(i=2;i<=sqrt(n);i++)
    {
        if(n%i==0)
        {
            isPrime=0;
            break;
        }
    }
    return isPrime;
}

long long reverse(long long n)
{
     long long int rn=0;
     int k;
     while(n!=0)
     {
         k=n%10;
         rn=rn*10+k;
         n=n/10;
     }
     return rn;
}

int main()
{
    long long n,i,count=0;
    scanf("%lld",&n);
    for(i=2;i<=n;i++)
    {
    //    printf("%lld ",i);
        if(IsPrime(i)==1 && IsPrime(reverse(i))==1)
        {
            printf("Prime(%d) <<---->> ReversePrime (%d)\n",i,reverse(i));
            count++;
        }
    }
   
   if(count==0)
      printf("no");

   // printf("%d",IsPrime(39989));
   // printf("%d",reverse(39989));
   // printf("%d",IsPrime(98993));
    return 0;   
}