由于运行结果内容太多,故部分运行结果截图如下:
/**
**程序算法思路:判断一个数是否为回文数,可以用一个函数模块来实现,然后用for循环对100000以内的数逐个进行判断并输出回文数。
回文数:判断一个数是不是回文数的方法,回文数就是原数与其倒置后的数相等。
*/
#include <stdio.h>
#define N 100000 //定义符号常量
//判断是否为回文数的函数
int isHuiwenNumber(int n)
{
int sum,tmp;
tmp=n;
sum=0;
while(n) //从低位到高位分解n的每位的数字,然后依次相加
{
sum=sum*10+n%10;
n/=10;
}
if(tmp == sum) //如果重新每位求和的值等于原值,则该数为完数,返回1,否则返回0
return 1;
else
return 0;
}
int main()
{
int i,count;
for(i=0,count=0;i<N;i++)
{
if(isHuiwenNumber(i)) //调用函数,如果条件为真,执行if语句体
{
printf("%-6d",i); //输出回文数
count++;
if(count % 10 == 0) //每行输出10个后便换行
printf("\n");
}
}
printf("\n");
return 0;
}
由于运行结果内容太多,故部分运行结果截图如下: