C语言每日一练——第43天:一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同
作者:互联网
C语言每日一练
2021年10月25日
题目描述
一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同
分析
在C语言每日一练——第6天:回文数中已经实现了比较先进的判断回文数的方法,因为这个题目比较简单(规定了5位数),所以这次就用笨方法——判断这个数的个位
与万位
是否相同,十位
与千位
是否相同。
代码实现
#include <stdio.h>
int main()
{
int num = 0;
int ones = 0; //个位
int decade = 0; //十位
// int hundred = 0; //百位
int kilobit = 0; //千位
int myriabit = 0; //万位
printf("请输入一个5位数\n");
scanf("%d", &num);
if(num < 10000 || num > 99999)
{
printf("错误,%d不是5位数\n", num);
return 0;
}
ones = num % 10; //获取个位数
decade = num / 10 % 10; //获取十位数
kilobit = num / 1000 % 10; //获取千位数
myriabit = num / 10000; //获取万位数
if(ones == myriabit && decade == kilobit)
printf("%d是回文数\n", num);
else
printf("%d不是回文数\n", num);
return 0;
}
运行结果
网上参考
原文链接:https://www.runoob.com/cprogramming/c-exercise-example30.html
// Created by www.runoob.com on 15/11/9.
// Copyright © 2015年 菜鸟教程. All rights reserved.
//
#include <stdio.h>
int main( )
{
long ge,shi,qian,wan,x;
printf("请输入 5 位数字:");
scanf("%ld",&x);
wan=x/10000; /*分解出万位*/
qian=x%10000/1000; /*分解出千位*/
shi=x%100/10; /*分解出十位*/
ge=x%10; /*分解出个位*/
if (ge==wan&&shi==qian) { /*个位等于万位并且十位等于千位*/
printf("这是回文数\n");
} else {
printf("这不是回文数\n");
}
}
标签:10,千位,int,个位,num,printf,万位,回文 来源: https://blog.csdn.net/weixin_43772810/article/details/120943835