回文数:一个数从左往右读和从右往左读都是一样的
📍 回文数
编写函数 palindromeNumber,求[200,3000]
范围内的回文数有哪些,在主函数中调用该函数。
输出区间[200,3000]
中所有的回文数,一行一个回文数,不需要输出其它无关的字符。
202
212
222
232
242
.....
👇 代码写在代码块中
#include<stdio.h>
int main()
{
int i;
int palindromeNumber(int j);
int s;
for (i = 200; i <= 3000; i++)//将200到3000的数进行穷举
{
if ( palindromeNumber(i) == 1)//判断是否为回文数,若是回文数则返回1
{
printf("%d\n", i);//打印这个数
}
}
}
int palindromeNumber(int j)
{
int a, b, c, d;
if (j < 1000)//对于三位数只要百位数和个位数相同就行
{
a = j / 100;
b = j % 10;
if (a == b)
{
return 1;
}
else
{
return 0;
}
}
else//对与1000到3000的数则要千位数与个位数相同十位与百位相同
{
a = j / 1000;
b = j % 10;
c = (j % 1000) / 100;
d = (j % 100) / 10;
if (a == b && c == d)
{
return 1;
}
else
{
return 0;//由于我上面定义的是int函数,所以要有返回值,否则的话回和题目要求不一样
}
}
}