【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后面加个\这是错误的写法,需要注意
相关推荐
We་ct41 分钟前
LeetCode 5. 最长回文子串:DP + 中心扩展
前端·javascript·算法·leetcode·typescript
JAVA面经实录9174 小时前
Java企业级工程化·终极完整版背诵手册(无遗漏、全覆盖、面试+落地通用)
java·开发语言·面试
lilihuigz4 小时前
Tutor LMS 4.0 Beta版全新上线:以学习者为中心的移动优先学习体验
学习·在线教育·lms
王老师青少年编程5 小时前
csp信奥赛C++高频考点专项训练之贪心算法 --【哈夫曼贪心】:合并果子
c++·算法·贪心·csp·信奥赛·哈夫曼贪心·合并果子
周杰伦fans5 小时前
AutoCAD .NET 二次开发:深入理解 EntityJig 的工作原理与正确实现
开发语言·.net
叼烟扛炮5 小时前
C++第二讲:类和对象(上)
数据结构·c++·算法·类和对象·struct·实例化
天疆说5 小时前
【哈密顿力学】深入解读航天器交会最优控制中的Hamilton函数
人工智能·算法·机器学习
wuweijianlove6 小时前
关于算法设计中的代价函数优化与约束求解的技术7
算法
leoufung7 小时前
LeetCode 149: Max Points on a Line - 解题思路详解
算法·leetcode·职场和发展
样例过了就是过了7 小时前
LeetCode热题100 最长公共子序列
c++·算法·leetcode·动态规划