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;

}

相关推荐
木井巳2 分钟前
【递归算法】找出所有子集的异或总和再求和
java·算法·leetcode·决策树·深度优先
froginwe115 分钟前
SVN 创建版本库
开发语言
2501_924952697 分钟前
C++中的枚举类高级用法
开发语言·c++·算法
闭关苦炼内功7 分钟前
使用Java语言实现二分查找
java·开发语言
2401_873204659 分钟前
代码覆盖率工具实战
开发语言·c++·算法
xht083211 分钟前
PHP vs C++:编程语言终极对决
java·开发语言
少司府12 分钟前
C++基础入门:第一个C++程序
java·c语言·开发语言·c++·ide
不染尘.12 分钟前
欧拉路径算法
开发语言·数据结构·c++·算法·图论
Greg_Zhong15 分钟前
Js中异步编程的知识扩展【异步有哪些、如何执行、宏任务和微任务等】
开发语言·javascript
黎阳之光25 分钟前
黎阳之光:数智技术赋能水利“平急两用” 筑牢水利工程安全防线
大数据·人工智能·算法·安全·数字孪生