(C语言程序题) 求累加和。 输入两个正整数n和a,求累加和 S=a + aa + aaa + …+aa...a(n个a)之和。 Sample Input: 5 3 Sample Output: 37035
时间: 2023-10-25 14:10:38 浏览: 215
分析:需要计算的累加和可以表示为:$$S=a+aa+aaa+\cdots+a\underbrace{aa\cdots a}_\text{n个a}$$ 将每一项展开:$$S=a+a\times10+a\times100+\cdots+a\times10^{n-1}+a\times10^{n}+\cdots+a\times10^{2n-1}$$ 每一项都是等比数列,可以用等比数列求和公式计算,然后将所有项相加即可。
代码实现:
相关问题
请用C语言实现:输入两个正整数n和a,求累加和 S=a + aa + aaa + …+aa...a(n个a)之和。
```c
#include <stdio.h>
int main() {
int n, a;
scanf("%d %d", &n, &a);
int sum = 0, tmp = a;
for (int i = 0; i < n; i++) {
sum += tmp;
tmp = tmp * 10 + a;
}
printf("%d\n", sum);
return 0;
}
```
请用C语言实现:输入两个正整数n和a,求累加和 S=a + aa + aaa + …+aa...a(n个a)之和。Sample Input: 5 3 Sample Output: 37035
```c
#include <stdio.h>
#include <math.h>
int main() {
int n, a;
scanf("%d%d", &n, &a);
int sum = 0, t = 0;
for (int i = 1; i <= n; i++) {
t += a * pow(10, i - 1);
sum += t;
}
printf("%d", sum);
return 0;
}
```
阅读全文