一段简单的程序,就是想不通,好像有些漏洞,求解决,我是好奇宝宝

#include
using namespace std;

void main()
{
int n,reverse = 0,rem,temp;
printf("enter an integer: ");
scanf("%d",&n);

temp = n;
while(temp!=0)
{
    rem = temp%10;
    reverse = reverse*10+rem;
    temp/=10;
}

if(reverse==n)
    printf("%d is a palindrome",n);
else
    printf("%d is not a palindrome ",n);

}
这个代码输出4 。4不是质数啊,求解

//100到200之间的素数输出

include

int main()
{
int i, j;
int sum=0;

for(i=100; i<=200; ++i)
{
    for(j=2; j<i; j++)
    {
        if(i%j != 0)
        {
            if(j+1 == i)
            {
                printf("%d\n", i);
            }
            continue;
        }
        else
        {
            break;
        }
    }

}

return 0;

}
这个是我之前写的质数的代码,你可以参考下,希望对你有帮助

这个程序又不是计算质数的,而是颠倒数的。
输入123输出321
reverse含义是颠倒。
这个程序判断一个数字颠倒和是否和原来的相等,比如 1234321 颠倒还是 1234321。

经过测试,此程序为反转数据用的,正如caozhy所说的输入123,输出321,和质量无关