解题思路:
1:计算各位阶乘和 2:符合条件的存入数组 3:按要求排序



注意事项:





参考代码:

#include<stdio.h>

int factorial(int x)

{

int i,t=1;

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

t=i*t;


return t;

 

}

int module(int x){

if(x<10)

return x;

else {

  while((x/=10)>10);

return x%=10;

  }

}

int main()

{

   unsigned int i,t,z=0,x[10],j=0,l=0,q=0;

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

   x[j]=0;

     j=0;

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

    t=i;

    while(t>0){

    z+=factorial(t%10);

    t/=10;

    }

    

      if(z==i)

      x[j++]=z;

      z=0;

      }

      

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

    if((module(x[i]))<(module(x[i-1]))){

    l=i-1;

       q=x[i];

       while((module(x[i]))<(module(x[l]))&&l>=0){

        x[l+1]=x[l];

        l--;

        }

  x[l+1]=q;

    }

      

    }   

    for(i=0;i<4;i++)

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

     

      

}

 


点赞(0)
 

0.0分

0 人评分

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

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

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

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

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

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

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

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

评论列表 共有 0 条评论

暂无评论