【C语言练习(5)—回文数判断】

C语言练习(5)


文章目录


前言

  • 通过回文数练习,巩固数字取余和取商如何写代码

问题

  • 输入一个五位数判断是否为回文数?

问题解析

  • 回文数是指正读反读都一样的整数。回文数或称回文数字,是一种具有特定性质的整数,其特点在于该数从前往后读和从后往前读都是相同的。例如,12321就是一个典型的回文数,因为无论从哪个方向阅读,数字序列都保持不变。
    假如给定12321,我们需要先找出个位数字、十位数字、千位数字、万位上数字,然后再判断个位数字是否和万位上数字相同,十位上数字是否和千位上数字相同即可

12321%10 可以得到个位上1

12321%100 可以得到余数21,再对21/10取商可以得到十位2

12321/1000 可以得到商12,再对12%10取商可以得到千位2

12321/10000 可以得到商1,可以得到万位1

c 复制代码
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>


int main()
{
    int x = 0;
    int ge = 0;
    int shi = 0;
    int qian = 0;
    int wan = 0;
    printf("请输入一个五位数:");
    scanf("%d",&x);
    ge = x % 10;
    shi= (x /10)%10;
    qian = (x / 1000) % 10;
    wan= x / 10000;
    if (ge == wan && shi == qian)
        printf("此数为回文数");
    else 
        printf("此数不是回文数");
    return 0;
}

结果


总结

  • 当我们写printf("%d\n")写习惯后也会scanf("%d\n",&x);这样写在%d后面加个\这是错误的写法,需要注意
相关推荐
ULTRA??11 小时前
各种排序算法时间复杂度分析和实现和优势
c++·python·算法·排序算法
Alair‎11 小时前
103React数据处理
开发语言·前端·javascript
博语小屋11 小时前
简单线程池实现(单例模式)
linux·开发语言·c++·单例模式
墨雪不会编程12 小时前
C++基础语法篇八 ——【类型转换、再探构造、友元】
java·开发语言·c++
sprintzer12 小时前
12.06-12.15力扣分治法刷题
算法·leetcode
老毛肚12 小时前
登录架构设计
java·开发语言
月明长歌12 小时前
【码道初阶】【牛客BM30】二叉搜索树与双向链表:java中以引用代指针操作的艺术与陷阱
java·数据结构·算法·leetcode·二叉树·笔试·字节跳动
南棱笑笑生12 小时前
20251215给飞凌OK3588-C开发板适配Rockchip原厂的Buildroot【linux-6.1】系统时统计eth1的插拔次数
linux·c语言·开发语言·rockchip
YJlio12 小时前
桌面工具学习笔记(11.4):BgInfo + Desktops + ZoomIt 组合拳——演示与排障环境一键到位
笔记·学习·自动化
hoiii18712 小时前
使用RPCA算法对图像进行稀疏低秩分解
人工智能·算法