C语言求 500至5000之间的所有回文数和最大回文

来源:百度知道 编辑:UC知道 时间:2024/06/16 16:22:06
能列出所有的回文数和最大回文
回文数是正念反念都相同的数 如1991等等
如果加上是500至5000之间的回文数是3的倍数的最大回文呢

#include <stdio.h>

bool cal(int i)
{
if(i<1000 && (i%1000)/100 == i%10) return true;
else if(i>=1000 && (i%10000) / 1000 == i%10 && (i%1000)/100 == (i%100)/10) return true;
else return false;
}

int main()
{
int i,max = 0;
for(i=500;i<=5000;i++)
{
if(cal(i))
{
printf("%d\n",i);
if(!(i%3)) max = i;
}
}
printf("最大回文且被3整除的数: %d\n",max);
scanf("%d");
}