前言
一个数的各位数字倒过来所得到的新数叫原数的反序数。如果一个数等于它的反序数,则称它为对称数或回文数。
一、题意
一个数的各位数字倒过来所得到的新数叫原数的反序数。如果一个数等于它的反序数,则称它为对称数或回文数。求10000以内的对称数。简单的说就是求10000以内的回文数。
输入样例
无需输入
输出样例
1
2
3
4
.
.
.
9889
9999
二、代码
1.代码的实现
#include<stdio.h>
int main()
{
int i;
int k;
int sum;
for(i=1;i<10000;i++)
{
sum=0;
k=i;
do
{
sum=sum*10+k%10;//对数字i进行逆排列
k=k/10;
}while(k>0);
if(sum==i)
printf("%d\n",i);
}
return 0;
}
2.读入数据
无需输入
若代码正确则输出1-10000中的所有回文数(见上方输出样例)
总结
回文数是编程中较为常见的基本问题,直接求数字的逆序,判断逆序是否等于原来的数即可,
if(逆序==原来的数)是回文数
else 不是回文数。
此类知识点较为薄弱的同学需要多加关注本题代码,回文数问题在后面的编程学习中会经常用到。