c语言判断该数字是否是回文数

2020-04-24  本文已影响0人  Murphy103

判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。

示例 1:

输入: 121

输出: true

示例 2:

输入: -121

输出: false

解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。

示例 3:

输入: 10

输出: false

解释: 从右向左读, 为 01 。因此它不是一个回文数

代码如下:

#include <stdio.h>

#include <string.h>

bool isPalindrome(int x){

    char s[50];

    int len = 0;

    sprintf(s,"%d",x); //将int型转为char型数组

    len = strlen(s);

    int i = 0;

    int j = len-1;

        for(;i < len&&j>0;i++,j--){ //循环比较字符串首尾字符是否相等,若不等直接退出循环。

            if(i<j){

                if(s[i]!=s[j]){ //这里字符的比较可以直接用等号

                    return false;

                }

            }

        }

   return true;

}

上一篇下一篇

猜你喜欢

热点阅读