在C语言中,要打印出所有的5位回文数,可以通过以下步骤实现:
初始化变量 :定义变量来存储5位数的每一位数字。循环遍历:
使用一个循环从10000遍历到99999。
提取数字:
在循环中,提取出当前数字的每一位数字。
判断回文:
检查提取出的数字是否满足回文数的条件,即第一位数字是否等于最后一位数字,第二位数字是否等于倒数第二位数字,以此类推。
打印回文数:
如果满足回文数的条件,则打印该数字。
```c
include
int main() {
int i;
for (i = 10000; i < 100000; i++) {
int ge = i % 10;// 获取个位数字
int shi = i / 10 % 10; // 获取十位数字
int qian = i / 100 % 10; // 获取百位数字
int wan = i / 1000 % 10; // 获取千位数字
int bai = i / 10000 % 10; // 获取万位数字
// 判断是否为回文数
if (ge == bai && shi == qian) {
printf("%d\n", i);
}
}
return 0;
}
```
代码解释:
循环遍历:
`for (i = 10000; i < 100000; i++)` 从10000遍历到99999,确保每个数字都是5位数。
提取数字
`ge = i % 10;` 获取个位数字。
`shi = i / 10 % 10;` 获取十位数字。
`qian = i / 100 % 10;` 获取百位数字。
`wan = i / 1000 % 10;` 获取千位数字。
`bai = i / 10000 % 10;` 获取万位数字。
判断回文:
`if (ge == bai && shi == qian)` 检查个位数字是否等于万位数字,十位数字是否等于千位数字。如果相等,则该数字是回文数。
打印回文数:
`printf("%d\n", i);` 打印满足条件的回文数。
运行这个程序,将会输出所有的5位回文数。