急求一个程序(回文素数)

来源:百度知道 编辑:UC知道 时间:2024/06/22 03:03:54
编译软件codeblocks或winTC,语言:c语言

用户输入两个数a和b,其中5 <= a < b <= 1000,000,000,要求程序输出在用户输入的a和b之间的所有回文素数

写出代码,不用数组,可以使用函数

#include<math.h>

/*判断是否回文*/

int hw(long num)
{

long n=0;
long count=0;

count=num;
do
{
n*=10;
n+=num%10;
num/=10;
}
while (num>0);
if (count==n)
{
return 1;
}
else
{
return 0;
}
}

/*判断是否素数*/
int ss(long num)
{
long i,k,flag=0;
k=(long)sqrt(num);
for (i=3;i<=k;i+=2)
{
if (num%i!=0) continue;
else return flag;
}
flag=1;
return flag;
}

void main()
{
long a, b;
printf("Please Input a(5-999,999,999):");
scanf("%ld",&a);
while (a<5 || a>999999999)
{
printf("The Number You Input is wrong,please Try again\nPlease Input a(5-999,999,