【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后面加个\这是错误的写法,需要注意
相关推荐
hahaha60163 小时前
Shades-of-Gray (SoG) 算法--白平衡算法
人工智能·嵌入式硬件·算法·计算机视觉
青山木3 小时前
Hot 100 --- 编辑距离
java·数据结构·算法·leetcode·动态规划
朝朝辞暮i3 小时前
C++ 第 26 课:对象、指针与 ->
java·开发语言·c++
fanged3 小时前
Camera学习2(V4L2和Media Controller)(TODO)
学习
夊3 小时前
C语言第十一课:指针(五)
算法
2601_962885723 小时前
如何用 Python 做股价历史分位选股?(筛出处于历史低位的股票)
开发语言·python
小师兄吃牛肉3 小时前
C语言指针进阶全解析
java·c语言·算法
梦帮科技3 小时前
vLLM / TensorRT-LLM 极限推理:PagedAttention 细粒度物理页表管理与连续批处理(Continuous Batching)实战
数据结构·人工智能·分布式·python·深度学习·算法·vllm
殷色玫瑰4 小时前
C++入门基础复习:从命名空间到引用与nullptr,一篇重新捡回C++基础
java·开发语言·c++
(Charon)4 小时前
【C++面试】手写线程池:任务队列、工作线程与优雅退出
开发语言·c++