编写一个判断是否是回文数的函数 fh(int x);然后主函数调用该函数,求出所有的5位数字的回文数。
#include <stdio.h>
int fh(int x);
void main()
{
int i;
for(i = 10000;i < 100000;i++){
if(fh(i)){
printf("%d\n",i);
}
}
}
int fh(int x)
{
int result = 0; //反转结果
int temp = 0; //取每一位
int temp_x = x; //临时变量保存原数
if (x < 0)
return 0;
else if (x == 0)
return 1;
else
{
while (x != 0)
{
temp = x % 10;
if (result > 214748364 || result == 214748364 && temp > 7)
return 0;
result = result * 10 + temp;
x /= 10;
}
}
if (result == temp_x)
return 1;
else
return 0;
}
#include<stdio.h>
int fh(int i)
{
int a=i/10000; // 取第一位
int b=i/1000%10; //取第二位
int c=i/10%10; //取第四位
int d=i%10; //取第五位
if (a==d&&b==c) {//判断对应位置数字是否相同
printf("%d\n",i);
}
}
int main()
{
for(int i = 10000; i <=99999; i++)
{
fh(i);
}
}