为什么不对呢,输出结果不对哎。

img

img


回文素数:既是回文又是素数,例如151。输入两个整数,求这个范围之间的所有回文素数的个数。


#include<stdio.h>
//本例子仅仅适合于大于等于10以上的用例分析
int main()
{
    int a,b,c;
    int i,sum = 0;
    int k,j = 0,y = 0,m;

    printf("输入两个数:");
    scanf("%d %d",&a,&b);

    for(c = a; c<=b; c++)
    {
        //该循环判断是否具备素数的条件
        for(i = 2; i<c; i++)
        {
            //统计取余为0的次数
            if(c%i!=0)
            {
                sum +=1;
            }
        }
        //判断是否为素数
        if(sum == c-2)
        {
            m = c;
            //使用一个变量保存好翻转过后的数字
            while(m>0)
            {
                y = y*10 + m%10;
                m = m/10;
            }
            //判断是否为回文数
            if(y == c)
            {
                j++;
            }
        }
        //每次循环后需要将其中的中间变量取0
        sum = 0;
        y = 0;
    }
    printf("回文素数的个数:%d",j);
}