欢迎光临散文网 会员登陆 & 注册

C语言——回文数

2022-09-07 20:43 作者:新新无所畏惧  | 我要投稿

题目:

【回文数】

给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。

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

【解题思路】

取给的整数的一半,此时先不管是奇数还是偶数,然后根据%10,/10,分别取出整数的右半部分;当该数是奇数时,可以/10把多余的数去掉,偶数则不用去,所以此时函数的返回条件即为reverNum==x||x==reverNum/10,是返回true,否则返回false;


【代码】


bool isPalindrome(int x){

    if(x<0||(x%10==0&&x!=0))

    {

    return false;

}

int reverNum=0;

while(x>reverNum)

{

reverNum=reverNum*10+x%10;

x=x/10;

}

if(reverNum==x||x==reverNum/10)

{

return true;

}

else

{

return false;

}

}


C语言——回文数的评论 (共 条)

分享到微博请遵守国家法律