问题: 求Sn = a + aa + aaa + aaaa + aaaaa 前5项之和, 其中 a 是一个数字
例如: 1 + 11 + 111 + 1111 + 11111
问题解析: 使用循环叠加即可
代码片段如下:
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
int cal(int n, int a) {
int i;
int tmp = n;
int sum = n;
for (i = 0; i < a - 1; i++) {
tmp = tmp * 10 + n;
sum += tmp;
}
return sum;
}
int main() {
int n,a;
printf("请输入0-9范围内的数字:");
scanf("%d", &n);
printf("请输入需要求的前n项和:");
scanf("%d", &a);
printf("%d\n", cal(n,a));
system("pause");
return 0;
}
结果如图: