末央& 2022-03-08 22:32 采纳率: 87.5%
浏览 82
已结题

c语言练习题望解答。

![img](https://img-mid.csdnimg.cn/release/static/image/mid/ask/365535877646153.jpeg "#left"

望各位告诉解题思路,是不是把每位数提出来相加,用取余

  • 写回答

4条回答 默认 最新

  • Code_流苏 C/C++领域优质创作者 2022-03-09 00:30
    关注

    测试图:

    img


    以下代码思路,供题主参考(划重点,重点是思路,而不是复制粘贴解决问题):

    #include<stdio.h>
    
    int main(){
        int n,m,i,sum=0,result=0;
        
        printf("请输入a的值:");
        scanf("%d",&m);
        
        while(m>9||m<1){
            printf("a的值必须在1到9之间!\n\n");
            printf("请输入a的值:");
            scanf("%d",&m);
        }
        
        printf("请输入n的值:");
        scanf("%d",&n);
        
        while(n>9||n<1){
            printf("n的值必须在1到9之间!\n\n");
            printf("请输入n的值:");
            scanf("%d",&n);
        }
        
        for(i=n;i>=1;i--){
            result=result*10+m;
            sum+=result;
        }
        
        printf("aa...aa-aaaaa-aaaa-...-aa-a=%d\n",result*2-sum); //因为都是负数相加,那么最后一个数是减(最大的那个数),故必须加上最后一个数的2倍
        
        return 0;
    }
    
    

    希望对题主有所帮助,可以的话,帮忙点个采纳!

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 3月16日
  • 已采纳回答 3月9日
  • 创建了问题 3月8日