编辑代码

#include <stdio.h>
#include <math.h>

int main () {
    // 初始化
    int inp=0, inp1=0, inp2=0, i1=0, i2=0, a=0;
    double pow(double x, double y);

    // 输入
    scanf("%d", &inp);

    // 操作1
    inp1 = inp;
    do {
        a = inp1 % 10;
        inp1 /= 10;
        i1++;
        printf("%d ", a);
    }while(inp1 != 0);
    printf("\n");

    // 操作2
    inp2 = inp;
    do {
        i2 = 0;
        do {
            inp2 /= 10;
            i2++;
        } while(inp2 > 9);
        printf("%d ", inp2);
        a = 1;
        for (int j=1; j <= i2; j++){
            a *= 10;
        }
        inp2 = inp % a;
    } while(inp2 > 9);
    printf("%d ", inp2);

    // 输出
    printf("\n共%d位", i1);

	return 0;
}