int a,b,p,i=1;
while(p==1&&s>0){
b=s%10;
int c=s;
while(c>=10){
c/=10;i++;
}
a=c;
if(a==b) p=1; else{ p=0;break;}
s-=a*pow(10.0,i*1.0-1);
s/=10;
i=1; }return p; }
int su(int s){
for(int i=2;i<sqrt(s);i++){
if(s%i==0) return 0;
}
return 1;
}
int main(){ for(int x=m;x<=n;x++){
if(su(x)==1&&hw(x)==1){
printf("%d",x);
}
}
return 0;
}修改如下,供参考:
#include <stdio.h>
//#include <math.h> 修改
//int main(){ 修改
// int m,n; 修改
// scanf("%d%d",&m,&n);修改
int hw(int s)
{
int a = 0,b = s;//,p,i=1; 修改
while (b)
{
a = a * 10 + b % 10;
b /= 10;
}
return a == s;
#if 0 //修改
while(p==1&&s>0){
b=s%10;
int c=s;
while(c>=10){
c/=10;
i++;
}
a=c;
if(a==b) p=1;
else{
p=0;
break;
}
s-=apow(10.0,i*1.0-1);
s/=10;
i=1;
}
return p;
#endif
}
int su(int s) //修改
{
if (s < 4) return s > 1;
if (!(s & 1)) return 0;
for(int i = 3; i * i <= s ;i++)
if(s%i==0) return 0;
return 1;
}
int main()
{
int m,n;
scanf("%d%d",&m,&n);
for(int x = m;x <= n; x++){
if(su(x) && hw(x)) //(su(x)==1 && hw(x)==1) 修改
printf("%d ",x);
}
return 0;
}
能用代码块格式化一下么,看着太乱了
代码有点乱
不知道你这个问题是否已经解决, 如果还没有解决的话: