【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后面加个\这是错误的写法,需要注意
相关推荐
Tisfy2 分钟前
LeetCode 955.删列造序 II:模拟(O(mn)) + 提前退出
算法·leetcode·字符串·题解·遍历
Tony Bai4 分钟前
Goroutine “气泡”宇宙——Go 并发模型的新维度
开发语言·后端·golang
小白闯关记录5 分钟前
学习记录(二十六)
学习
im_AMBER8 分钟前
Leetcode 82 每个字符最多出现两次的最长子字符串 | 删掉一个元素以后全为 1 的最长子数组
c++·笔记·学习·算法·leetcode
java修仙传12 分钟前
力扣hot100:旋转排序数组中找目标值
算法·leetcode·职场和发展
式51613 分钟前
量子力学基础(二)狄拉克符号与复数向量空间
人工智能·算法·机器学习
Larry_Yanan14 分钟前
Qt多进程(二)QProcess+stdio
开发语言·qt
石像鬼₧魂石14 分钟前
SET的钓鱼网站钓鱼模块
windows·学习·ubuntu
码农葫芦侠16 分钟前
Qt 跨线程内存管理陷阱:QSharedPointer、deleteLater() 与 QPointer 的致命组合
开发语言·数据库·qt
Gavin在路上17 分钟前
AI学习之稀疏 MoE+Transformer架构
人工智能·学习·transformer