View Code of Problem 92

#include<stdio.h>
int IsPrime(int n)
{
    if(n<2)
        return 0;
    int bound = sqrt(n);
    int i;
    for(i=2; i<=bound;i++)
    {
        if(n%i == 0)
        {
          return 0;
        }
    }
    return 1;
}//判断是否是素数

int Reverse(int number)
{
    int reversenumber=0;
    while(number!=0)
        {
        reversenumber*=10;
        reversenumber+=number%10;
        number/=10;
    }
    return reversenumber;
}//判断是否是回文数

int main()
{
    int i,m,n;
    scanf("%d %d",&m,&n);
    int cnt = 0;
    for(i=m;i<=n;i++)
        {
      if(i == Reverse(i))
      {
        if(IsPrime(i)==1)
        {
          cnt++;
          printf("%6d",i);//按六位域宽输出,每行输出五个
          if(cnt%5==0)
          {
            printf("\n");
          }//当cnt值还没有达5时都不会换行,当达到5或者5的倍数时换行
        }
      }
    }
    return 0;
}

Double click to view unformatted code.


Back to problem 92