判断回文数 得到逆序数

回文数
所谓回文数是指顺序读与反序读都是一样的数,如121,25852都是回文数。

解法一答案版`


#include <stdio.h>
int main(void)
{
    
    
    int num, s, y=0;
    printf("Please input numbers:");
    scanf("%d", &num);
    s=sum;
    while(s>0)
    {
    
    
        y=y*10+s%10;
        s=s/10;
    }
    if(y==num)
    {
    
    
        printf("%d是一个回文数\n", num);
    }
    else
    {
    
    
        printf("%d不是一个回文数\n", num);
    }
}

解法一解析版

#include <stdio.h>
int main(void)
{
    
    
    int num, s, y=0;
    printf("Please input numbers:");
    scanf("%d", &num);
    s=sum;//我们把sum的值给s,用s得到逆序的y, 因为在经历循环后值会发生变化,可是我们还需要原来数值的num,只能让s去变了
    
    while(s>0)
    {
    
    
        y=y*10+s%10;//这个while可以得到逆序的数即最终的y
        s=s/10;
    }
    
    if(y==num)//判断逆序的数和原来的数是否相等
    {
    
    
        printf("%d是一个回文数\n", num);
    }
    else
    {
    
    
        printf("%d不是一个回文数\n", num);
    }
}

猜你喜欢

转载自blog.csdn.net/weixin_51676760/article/details/110353375