对于每个n,如果该数是不大于五位数的对称素数,则输出“Yes”,否则输出“No”。每个判断结果单独列一行。用c语言
时间: 2024-05-22 20:13:19 浏览: 71
#include <stdio.h>
#include <stdbool.h>
// 判断是否是素数
bool isPrime(int n) {
if (n <= 1) {
return false;
}
for (int i = 2; i * i <= n; i++) {
if (n % i == 0) {
return false;
}
}
return true;
}
// 判断是否是回文数
bool isPalindrome(int n) {
int temp = n, reverseNum = 0;
while (temp != 0) {
reverseNum = reverseNum * 10 + temp % 10;
temp /= 10;
}
return n == reverseNum;
}
int main() {
int n;
scanf("%d", &n);
if (n >= 11 && n <= 99 && isPrime(n) && isPalindrome(n)) {
printf("Yes\n");
} else if (n >= 101 && n <= 999 && isPrime(n) && isPalindrome(n)) {
printf("Yes\n");
} else {
printf("No\n");
}
return 0;
}
阅读全文