求对称素数



//对称素数


#include<stdio.h>
#include<string.h>
#include<math.h>
void main()
{
int i,j,k,shu,z;
char str[6];


while(scanf("%s",str)!=EOF)


{   shu=0;
   int flag=1;
        k=strlen(str);


for(i=0,j=k-1;i<=j;i++,j--)//千万注意i的范围,如果i<=k,会出现重复
{
             if(str[i]!=str[j])    //千万注意,是考虑它们不相等时,标志改变,跳出
{


              printf("不是对称数\n");
 flag=0;
 break;
}
        
}
if(flag==1)
{  
            for(i=0;i<k;i++)
shu=shu*10+str[i]-'0';
printf("输出的对称数为:");
printf("%d\n",shu);
            if(shu<2)
printf("no\n");
            else
{
    z=sqrt(shu);
for(i=2;i<=z;i++)
    if(shu%i==0)
{ printf("是对称数不是对称素数\n");break;}
if(i>z)

                    printf("同时也是对称素数\n");


}
}


}

猜你喜欢

转载自blog.csdn.net/qq_32900237/article/details/79265241