C语言初学者一枚,请求帮助

用c语言编写程序,输出一个四位整数的各位数字
格式四位整数=个位数字+十位数字×10+百位数字×100+千位数字×1000

img

#include <stdio.h>
int main()
{
    int a,b,c,d,e;           

    printf("please input a number");    
    scanf("%d",&a);                 
    b=a/1000;   
    c=(a-b*1000)/100;
    d=(a-b*1000-c*100)/10;
    e=(a-b*1000-c*100-d*10)%10;

    printf("%d=%d+%d+%d+%d",a,e,d*10,c*100,b*1000);

    return 0;
}

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 你可以参考下这个问题的回答, 看看是否对你有帮助, 链接: https://ask.csdn.net/questions/7547275
  • 你也可以参考下这篇文章:C语言学习中遇到的问题和解决方法
  • 除此之外, 这篇博客: C语言--经典100题中的 1、题目:有1、2、3、4四个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? 部分也许能够解决你的问题, 你可以仔细阅读以下内容或者直接跳转源博客中阅读:
    /*
    题目:有1、2、3、4四个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
    */
    #include <stdio.h>
    
    int main(){
        int arr[]={1,2,3,4};
        
        // 创造三位数--三重循环
        int n=0,result[256];
        for(int i=1;i<5;i++){// i-百位,j-十位,k-个位
            for(int j=1;j<5;j++){
                for(int k=1;k<5;k++){
                    if(k!=i&&k!=j&&j!=i){ // 避免重复数字
                        result[n++]=100*i+10*j+k;
                        result[n]='\0';
                    }
                }
            }
        }
        // 打印
        for(int i=0;result[i];i++){
            printf("%d\n",result[i]);
        }
    }
    

    运行结果:

      123  124  132  134  142  143
      213  214  231  234  241  243
      312  314  321  324  341  342
      412  413  421  423  431  432
    

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^