如果正整数n与它的反序数m(数字排列相反)同为素数,且m不等与n,称n和m是一对"幻影素数"。

如果正整数n与它的反序数m(数字排列相反)同为素数,且m不等与n,称n和m是一对"幻影素数"。c语言编程题

题目不全 应该是要求某个范围的所有幻影素数

或者是 输入一个数 判断是否为幻影素数。


给出一个判断幻影素数的函数。

其它的 根据题意加上就好。

#include <stdio.h>
#include <math.h>
 
int isPrime(int n)
{
    int i;
    if(n == 2) return 1;
    if(n%2==0) return 0;
    for(i = 3; i <= (int)sqrt(n); i +=2)
        if(n%i == 0) return 0;
    return 1;
}

int isShadowPrime(int n)
{
    if(isPrime(n))
    {
        int m=0;
        while(n)
        {
            m*=10;
            m+=n%10;
            n/=10;
        }
        if(isPrime(m)) return 1;
    }
    
    return 0;
}

isShadowPrime 

返回1 则为幻影素数。

追问

谢谢

追答

给个采纳吧

追问

return还没学

温馨提示:答案为网友推荐,仅供参考
相似回答