方法一:
#include <stdio.h>
int main()
{
long i ;
int sum = 0 ;
for (i = 1000000 ; i <= 9999999 ; i++) // 从最小的五位数开始,循环到最大的五位数
{
if( i / 1000000 == i % 10 ) // 百万位 等于 个位 进入下个判断
{
if ( i / 100000 % 10 == i % 100 / 10) // 十万位 等于 十位 进入下个判断
if ( i / 10000 % 10 % 10 == i % 1000 / 100) // 万位 等于 百位 进入下个判断
{
sum++ ; // 自增 1
printf("第%d回文数%d\n",sum,i) ; //输出满足这个上述条件的条件
}
}
}
printf("共有%d个回文数\n",sum) ;
return 0 ;
}
方法二
#include <stdio.h>
int main()
{
long i ;
int sum = 0 ;
for (i = 1000000 ; i <= 9999999 ; i++)
{
if( i / 1000000 == i % 10 && i / 100000 % 10 == i % 100 / 10 && i / 10000 % 10 % 10 == i % 1000 / 100 )
{
{
sum++ ;
printf("第%d回文数%d\n",sum,i) ;
}
}
}
printf("共有%d个回文数\n",sum) ;
return 0 ;
}
方法二与方法一的区别是,方法二把所有的判断条件放在了一起。
而方法一是递进判断。