解题思路:

注意事项:

参考代码:

#include <stdio.h>

#include <string.h>

#include <math.h>



int main()

{

    int a,b,c,d,e;

    int a1,b1,c1,d1,e1;

    int x[100]={0},y=0;

    int m[100];

    for(int i=1;i<100000;i++)

    {

        a=i%10;

        b=(i/10)%10;

        c=(i/100)%10;

        d=(i/1000)%10;

        e=(i/10000)%10;

        if((a==0)&&(b==0)&&(c==0)&&(d==0)&&(e==0)) a1=0;

        else a1=1;

        if((b==0)&&(c==0)&&(d==0)&&(e==0)) b1=0;

        else b1=1;

        if((c==0)&&(d==0)&&(e==0)) c1=0;

        else c1=1;

        if((d==0)&&(e==0)) d1=0;

        else d1=1;

        if(e==0) e1=0;

        else e1=1;

        for(int j=1;j<=a;j++)

            a1=a1*j;

        for(int j=1;j<=b;j++)

            b1=b1*j;

        for(int j=1;j<=c;j++)

            c1=c1*j;

        for(int j=1;j<=d;j++)

            d1=d1*j;

        for(int j=1;j<=e;j++)

            e1=e1*j;

        if(i==a1+b1+c1+d1+e1)

            {

                x[y]=i;

                y++;

            }

    }

   /* for(int i=0;i<y;i++)

        printf("%d ",x[i]);

        printf("\n");*/

    for(int i=0;i<y;i++)

    {

        a=x[i]%10;

        b=(x[i]/10)%10;

        c=(x[i]/100)%10;

        d=(x[i]/1000)%10;

        e=(x[i]/10000)%10;

        if((b==0)&&(c==0)&&(d==0)&&(e==0))

            m[i]=a;

        else if((c==0)&&(d==0)&&(e==0))

            m[i]=b;

        else if((d==0)&&(e==0))

            m[i]=c;

        else if(e==0)

            m[i]=d;

        else if(e!=0)

            m[i]=e;

    }

    /*for(int i=0;i<y;i++)

        printf("%d ",m[i]);

        printf("\n");*/

    for(int i=0;i<y;i++)

    {

        for(int j=i+1;j<y;j++)

            if(m[j]<m[i])

        {

            int t=x[i];

            x[i]=x[j];

            x[j]=t;

        }

    }

    for(int i=0;i<y;i++)

        printf("%d ",x[i]);

    return 0;

}


点赞(0)
 

0.0分

0 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 0 条评论

暂无评论