#include<stdio.h> int IsPrime(int n) { if(n<2) return 0; int bound = sqrt(n); int i; for(i=2; i<=bound;i++) { if(n%i == 0) { return 0; } } return 1; }//判断是否是素数 int Reverse(int number) { int reversenumber=0; while(number!=0) { reversenumber*=10; reversenumber+=number%10; number/=10; } return reversenumber; }//判断是否是回文数 int main() { int i,m,n; scanf("%d %d",&m,&n); int cnt = 0; for(i=m;i<=n;i++) { if(i == Reverse(i)) { if(IsPrime(i)==1) { cnt++; printf("%6d",i);//按六位域宽输出,每行输出五个 if(cnt%5==0) { printf("\n"); }//当cnt值还没有达5时都不会换行,当达到5或者5的倍数时换行 } } } return 0; } |
Double click to view unformatted code.