【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后面加个\这是错误的写法,需要注意
相关推荐
ly_Enhs1 小时前
从无光照到 PBR:我的环境光照学习记录
学习·vulkan图形渲染c/c++
小李不想当小白1 小时前
USART串口数据包(STM32标准库学习笔记)
经验分享·笔记·stm32·单片机·嵌入式硬件·学习
xier_ran1 小时前
【infra之路】AI 编译器学习笔记(八):向量化——把小块变成 SIMD 指令
人工智能·笔记·学习
kmomo..1 小时前
Linux 驱动开发学习笔记:I2C 子系统从入门到实践
linux·驱动开发·学习
信奥卷王1 小时前
[GESP202503 六级] 环线(含视频)
算法
CQU_JIAKE1 小时前
10.15【A】
算法
卢锡荣1 小时前
乐得瑞Type-c接口产品描述
c语言·开发语言
晴天的雨.9921 小时前
【C++】模板进阶
开发语言·c++·算法
Shadow(⊙o⊙)1 小时前
仿muduo实现高并发服务器——时间轮timewheel.cpp
c语言·c++
木井巳1 小时前
【动态规划】三步问题
java·算法·leetcode·动态规划·推荐算法