编写程序,找出100~1000之间的所有可逆素数

img


#include <stdio.h>
#include <math.h>
int IsPrime(int n)
{
    int i;
    if (n <= 1)
        return 0;
    for (i = 2; i <= (int)sqrt(n); i++)
        if (n % i == 0 && n != 2)
            return 0;
    return 1;
}
int rev(int n)
{
    int x = 0;
    while (n != 0)
    {
        x = x * 10 + n % 10;
        n /= 10;
    }
    return x;
}
int main()
{
    int i;
    for (i = 100; i < 1000; i++)
        if (IsPrime(i) && IsPrime(rev(i)) && rev(i) >= i)
            printf("%d %d\n", i, rev(i));
    return 0;
}