如果一个自然数是素数,且它的数字位置翻转后仍为素数(翻转指:157->751),则称为绝对素数。试求出所有的三位绝对素数。
#include<stdio.h>
int main( )
{
int i,j,k,m;
for(i=101;i<1000;i++)
{
for(j=2;j<i;j++)
{
if(i%j==0) break;
}
if(j==i)
{
int g,s,b;
b=i/100;
s=(i-b*100)/10;
g=i%10;
m=g*100+s*10+b;
for(k=2;k<m;k++)
{
if(m%k==0) break;
}
if(k==m) printf("%d\n",i);
}
}
return 0;
}
思路:数为n,素数的判断就是从2到n-1,i%j==0,if j==i,那么就是素数,求翻转数,就是/%运算求出各位数字再×回去