C语言| 回文数字

判断一个数是否是回文数

m = number;

把这个数m 进行除法、取余数的操作,分别得到个位 十位 百位 千位...

再把它们相加,最后和原数比较看是否相等来判断是否是回文数字。

试数的过程:23432

① sum=sum*10+m%10 即sum=0 +2=2,然后m /=10,即m=2343。

② sum=sum*10+m%10 即sum=2*10 +3=23,然后m /=10,即m=234。

③ sum=sum*10+m%10 即sum=23*10 +4=234,然后m /=10,即m=23。

④ sum=sum*10+m%10 即sum=234*10 +3=2343,然后m /=10,即m=2。

⑤ sum=sum*10+m%10 即sum=2343*10 +2=23432,然后m /=10,即m=0。m=0则退出while循环。

此时sum的值就是m完全倒过来的值,接下来就判断它们相不相等就行了。

【运行结果】

【程序代码】

#include <stdio.h>

int main(void)

{

int number; //存放待判断的数字

int m;

int sum = 0;

printf("请输入您需要判断的数字:");

scanf("%d", &number);

m = number;

while(m) // m不为0,则执行程序

{

sum = sum*10 +m%10; //sum的值就是m倒过来的值,也就是number

m /= 10;

}

if(sum == number)

{

printf("Yes\n");

}

else

{

printf("No\n");

}

return 0;

}

相关推荐
君义_noip17 小时前
信息学奥赛一本通 1661:有趣的数列 | 洛谷 P3200 [HNOI2009] 有趣的数列
c++·算法·组合数学·信息学奥赛·csp-s
leaves falling17 小时前
C语言内存函数-
c语言·开发语言
程序员:钧念17 小时前
深度学习与强化学习的区别
人工智能·python·深度学习·算法·transformer·rag
leaves falling17 小时前
c语言-扫雷游戏
c语言·单片机·游戏
英英_18 小时前
MATLAB数值计算基础教程
数据结构·算法·matlab
一起养小猫18 小时前
LeetCode100天Day14-轮转数组与买卖股票最佳时机
算法·leetcode·职场和发展
至为芯19 小时前
IP6537至为芯支持双C口快充输出的45W降压SOC芯片
c语言·开发语言
hele_two19 小时前
快速幂算法
c++·python·算法
小羊羊Python19 小时前
SoundMaze v1.0.1正式发布!
开发语言·c++
浩瀚地学19 小时前
【Java】JDK8的一些新特性
java·开发语言·经验分享·笔记·学习