#include<stdio.h>

int main()

{

    int sun,sum,i,j,k,n,m,c;

    scanf("%d",&sun);

    if(sun<10)

    {

        c=1;

        i=sun;

        sum=sun;

        printf("%d\n",c);

        printf("%d\n",i);

        printf("%d\n",sum);

    }

    else if(sun<100)

    {

        c=2;

        j=sun/10;

        i=sun-10*j;

        sum=10*i+j;

        printf("%d\n",c);

        printf("%d %d\n",j,i);

        printf("%d\n",sum);

    }

    else if(sun<1000)

    {

        c=3;

        k=sun/100;

        j=(sun-100*k)/10;

        i=sun-100*k-10*j;

        sum=100*i+10*j+k;

        printf("%d\n",c);

        printf("%d %d %d\n",k,j,i);

        printf("%d\n",sum);

    }

    else if(sun<10000)

    {

        c=4;

        n=sun/1000;

        k=(sun-1000*n)/100;

        j=(sun-1000*n-100*k)/10;

        i=sun-1000*n-100*k-10*j;

        sum=1000*i+100*j+10*k+n;

        printf("%d\n",c);

        printf("%d %d %d %d\n",n,k,j,i);

        printf("%d\n",sum);

        

    }

    else if(sun<100000)

    {

        c=5;

        m=sun/10000;

        n=(sun-10000*m)/1000;

        k=(sun-10000*m-1000*n)/100;

        j=(sun-10000*m-1000*n-100*k)/10;

        i=sun-10000*m-1000*n-100*k-10*j;

        sum=10000*i+1000*j+100*k+10*n+m;

        printf("%d\n",c);

        printf("%d %d %d %d %d\n",m,n,k,j,i);

        printf("%d\n",sum);

    }

    return 0;

}


点赞(1)
 

0.0分

0 人评分

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

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

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

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

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

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

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

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

评论列表 共有 1 条评论

Kiku 7年前 回复TA
代码比较简单易懂,但应该考虑下当位数不为5,而为更大时,这个算法效率就太低了,也就是普适性不强