#include <stdio.h> #include <math.h> int main() { int a, b = 0; scanf("%d", &a); /*变成回文数*/ // 先组成回文数 char strNum[10] = {0}; while (a > 0) { strNum[b] = a % 10; a /= 10; b++; } b -= 1; // 左边所需回文对称长度 int d = b * 2 + 1; // 总回文长度 long hui = 0; // 变数字回文数 for (int i = 0; i < d; i++) { int num = 0; if (i <= b) { num = strNum[b - i]; } else { num = strNum[i - b]; } long getTen = 1; for (int j = i; j > 0; j--) { getTen *= 10; } hui += num * getTen; } /*判断是否是素数*/ int isPrime = 1; for (int i = 2; i < sqrt(hui); i++) { if (hui % i == 0) { isPrime = 0; break; } } if (isPrime) { printf("prime"); } else { printf("noprime"); } return 0; }