司机是个大坏蛋


私信TA

用户名:413845275

访问量:34500

签 名:

ctf菜鸡

等  级
排  名 287
经  验 5683
参赛次数 1
文章发表 38
年  龄 18
在职情况 学生
学  校
专  业

  自我简介:

解题思路:





注意事项:





参考代码:

#include<stdio.h>

int go(int i);

int jie(int n);

int main()

{

    int i,a,b,c,d,e,j;

    for(j=1; j<10; j++)

    {

        for(i=j; i<=j; i++)

        {

            if(i==go(i))

            {

                printf("%d ",i);

            }

        }

        for(i=j*10; i<(j+1)*10; i++)

        {

            if(i==go(i))

            {

                printf("%d ",i);

            }

        }

        for(i=j*100; i<(j+1)*100; i++)

        {

            if(i==go(i))

            {

                printf("%d ",i);

            }

        }

         for(i=j*1000; i<(j+1)*1000; i++)

        {

            if(i==go(i))

            {

                printf("%d ",i);

            }

        }

        for(i=j*10000; i<(j+1)*10000; i++)

        {

            if(i==go(i))

            {

                printf("%d ",i);

            }

        }

    }


}

int go(int n)

{

    int a,b,c,d,e,f,x;

    if(n<10)

    {

        a=n%10;

        x=jie(a);

        return x;

    }

    else if(n<100)

    {

        a=n/10;

        b=n%10;

        x=jie(a)+jie(b);

        return x;

    }

    else if(n<1000)

    {

        a=n/100;

        b=n%100/10;

        c=n%10;

        x=jie(a)+jie(b)+jie(c);

        return x;

    }

    else if(n<10000)

    {

        a=n/1000;

        b=n%1000/100;

        c=n%100/10;

        d=n%10;

        x=jie(a)+jie(b)+jie(c)+jie(d);

        return x;

    }

    else if(n<100000)

    {

        a=n/10000;

        b=n%10000/1000;

        c=n%1000/100;

        d=n%100/10;

        e=n%10;

        x=jie(a)+jie(b)+jie(c)+jie(d)+jie(e);

        return x;

    }

}

int jie(int n)

{

    int i,sum;

    sum=1;

    for(i=1; i<=n; i++)

    {

        sum=sum*i;

    }

    return sum;

}


 

0.0分

2 人评分

  评论区

  • «
  • »