绝对素数是指本身是素数,其逆序数也是素数的数。例如:10321与12301是绝对素数。
编程实现:键盘输入一个整数n,输出小于n的所有绝对素数。
要求:编写函数int isprime(int x)实现测试参数x是否为素数;编写函数int convert(int x),返回参数x的逆序数。main中完成输入输出与函数调用。
http://blog.csdn.net/guoqingchun/article/details/8169793
int convert(int n)
{
int n_Inv;
n_Inv=0;
while (n/10!=0)
{
n_Inv=n_Inv*10+n%10;
n=n/10;
}
n_Inv=n_Inv*10+n;
return n_Inv;
}
int is_prime(int n)
{
int i;
int sqr;
sqr=(int)sqrt(n);
if (n==2)
{
return 1;
}
for (i=2;i<=sqr;i++)
{
if (n%i==0)
{
return 0;
}
}
return 1;
}
int main()
{
int n=0;
int i=0;
printf("Please Enter: ");
scanf("%d",&n);
for (i=2;i<=n;i++)
{
if (is_prime(i) && is_prime(convert(i)))
{
printf("%d\n",i);
}
}
return 0;
}