C语言练习题-C语言练习题实例30
题目:判断一个5位数是否为回文数。回文数是指个位与万位相同,十位与千位相同,例如:12321。
程序分析:学会分解出每一位数。
实例
#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");
}
return 0;
}
以上实例输出结果为:
请输入 5 位数字:12321
这是回文数
请输入 5 位数字:12345
这不是回文数
该程序通过分解出给定5位数的各位数字,并进行相应的比较,判断该数是否为回文数。在主函数中,我们接受用户输入的5位数字,并使用除法和取余运算分解出各位数字,分别保存在变量 wan
、qian
、shi
和 ge
中。然后,使用条件语句判断个位与万位是否相同,十位与千位是否相同。如果满足条件,则输出 "这是回文数";否则,输出 "这不是回文数"。