C语言学习笔记(demo8-求Sn=a+aa+aaa+aaaa+aaaaa的前5项之和,其中a是一个数字, 例如:2+22+222+2222+22222 )

不难看出在2+22+222+2222+22222中后一项等于前一项乘10+2.

所以定义一个整形来控制次数,一个来控制底数

然后定义一个变量做每次求和,比如22=2*10+2,这算一次

在定义一个统计量将每次求和加到一起。

#include<stdio.h>
int main() {
    int i;
    int n, m;//n做底数,m做次数
    scanf("%d%d", &n, &m);
    int sum = 0;//做统计
    int tmp = 0;//做变换
    for (i = 1;i <= m;i++) {
        tmp = tmp * 10 + n;
        sum += tmp;
    }
    printf("%d", sum);
    return 0;
}

发布了18 篇原创文章 · 获赞 0 · 访问量 218

猜你喜欢

转载自blog.csdn.net/qq_42649916/article/details/103058801