#include<stdio.h> #include<math.h> //m~n之间的回文素数,每个数占6位,每行限输出5个 huiwen(int n){ int i,p,q=0; p=n; while(n>0){ q=q*10+n%10; n=n/10; } if(q==p) return 1; //是回文数 else return 0; // 不是 } isPrime(int n){ int m,i; m=sqrt(n); for(i=2;i<=m;i++){ if(n%i==0) return 0; //不是素数 } return 1; //是素数 } int main(){ int m,n,num=0; int a[1000]; scanf("%d %d",&m,&n); for(;m<=n;m++){ if(huiwen(m)&&isPrime(m)){ printf("%6d",m); num++; if(num%5==0) printf("\n"); } } printf("\n"); } |
Double click to view unformatted code.