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 分钟前
mybatis-plus调用报 org.springframework.dao.DataIntegrityViolationException 错误处理
开发语言·python·mybatis
洲覆3 分钟前
Redis 内存淘汰策略
开发语言·数据库·redis·缓存
口嗨农民工13 分钟前
SVN冲突处理相关,标识 C 语言源文件(.c)的不同版本或冲突状态
c语言·svn
偶尔贪玩的骑士22 分钟前
Kioptrix Level 1渗透测试
linux·开发语言·网络安全·php
それども33 分钟前
忽略Lombok构建警告
java·开发语言·jvm
qiuiuiu4131 小时前
正点原子RK3568学习日志12-注册字符设备
linux·开发语言·单片机·学习·ubuntu
liu****1 小时前
20.哈希
开发语言·数据结构·c++·算法·哈希算法
MetaverseMan1 小时前
Java Spring 框架的`@Autowired` 注解 以及依赖注入分析
java·开发语言·spring
迎風吹頭髮1 小时前
Linux服务器编程实践58-getnameinfo函数:通过socket地址获取主机名与服务名
开发语言·数据库·php
爱和冰阔落1 小时前
【C++多态】虚函数/虚表机制与协变 、override和final关键字全解析
开发语言·c++·面试·腾讯云ai代码助手