Lansional 2023-03-26 16:22 采纳率: 88%
浏览 14
已结题

当输入 2 3 时,程序会计算并输出 $2 + 22 + 222 = 246

当输入 2 3 时,程序会计算并输出 2 + 22 + 222 = 246
为什么不能实现

#include <stdio.h>

int main()
{
    int a, n, s = 0;
    scanf("%d %d", &a, &n);
    int i, j;
    for (i = 1; i <= n; i++)
    {
        s = s + a;
        a = a * 10;
    }
    printf("%d", s);
    return 0;
}

  • 写回答

4条回答 默认 最新

  • 坚持不懈的大白 优质创作者: 前端开发技术领域 2023-03-26 16:43
    关注

    你把for循环的a打印结果输出一下就知道了

    //for循环
    i =  1 s = 2 a = 20
    i = 2 s = 22 a = 200
    i=3 s = 222 a = 2000
    

    这样吧!

    #include <stdio.h>
    
    int main()
    {
        int a, n, s = 0, sum2;
        scanf("%d %d", &a, &n);
        int i, j;
        s = sum2 = a;
        for (i = 2; i <= n; i++)
        {
            s = s * 10 + a;
            sum2 += s;
        }
        printf("%d", sum2);
        system("pause");
        return 0;
    }
    
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 4月4日
  • 已采纳回答 3月27日
  • 创建了问题 3月26日