![](https://csdnimg.cn/release/download_crawler_static/89319882/bg1.jpg)
回文数(Palindrome)是指一个数字、单词、短语、诗句或其他字符序列,其从前往后
和从后往前是完全相同的。对于整数而言,如果一个数从左边读和从右边读都是相同的,
那么这个数就是回文数。
素数(Prime Number)则是指一个大于 1 的自然数,除了 1 和它自身外,不能被其他
自然数整除的数。
回文素数则是同时满足回文数和素数两个条件的数。
下面是一个 C 语言程序,用于找出一定范围内的所有回文素数:
c
复制代码
#include <stdio.h>
#include <stdbool.h>
#include <math.h>
// 判断一个数是否为素数
bool isPrime(int num) {
if (num <= 1) return false;
if (num == 2) return true;
if (num % 2 == 0) return false;
int sqrtNum = (int)sqrt(num);
for (int i = 3; i <= sqrtNum; i += 2) {
if (num % i == 0) {
return false;
}
}
return true;
}
// 判断一个数是否为回文数
bool isPalindrome(int num) {
int reversed = 0, original = num, remainder;
while (original != 0) {
remainder = original % 10;
reversed = reversed * 10 + remainder;
original /= 10;
}
return num == reversed;
}