打印本文 打印本文  关闭窗口 关闭窗口  
C趣味程序百例(07)4位反序数
作者:佚名  文章来源:不详  点击数  更新时间:2008/4/18 13:59:21  文章录入:杜斌  责任编辑:杜斌

21.4位反序数
    设N是一个四位数,它的9倍恰好是其反序数,求N。反序数就是将整数的数字倒过来形成的整数。例如:1234的反序数是4321。
*题目分析与算法设计
    可设整数N的千、百、十、个位为i、j、k、l,其取值均为0~9,则满足关系式:
        (i*103+j*102+10*k+l)*9=(l*103+k*102+10*j+i)
    的i、j、k、l即构成N。
*程序说明与注释
#include<stdio.h>
void main()
{
    int i;
    for(i=1002;i<1111;i++)        /*穷举四位数可能的值*/
        if(i%10*1000+i/10%10*100+i/100%10*10+i/1000==i*9)
                                  /*判断反序数是否是原整数的9倍*/
            printf("The number satisfied stats condition is: %d\n",i);
                                    /*若是则输出*/
}
*运行结果
    The number satisfied states condition is:1089
打印本文 打印本文  关闭窗口 关闭窗口