C版本使用函数累加由n个a构成的整数之和:输人两个正整数a和n,求 a+aa+aaa+aa…a(n个a)之和。要求定义并调用函数fn(a,n),它的功能是返回aaa(n个a)。 例如,fn(3,2)的返回值是33。试编写相应程序。
时间: 2023-10-22 16:06:49 浏览: 84
给定两个均不超过9的正整数a和n,要求编写程序求a+aa+aaa++⋯+aa⋯a(n个a)之和。
5星 · 资源好评率100%
好的,我理解了你的要求。下面是一个符合你需求的C语言程序:
```c
#include <stdio.h>
int fn(int a, int n) {
int sum = 0, base = 0;
for (int i = 0; i < n; i++) {
base = base * 10 + a;
sum += base;
}
return sum;
}
int main() {
int a, n;
printf("请输入两个正整数a和n:\n");
scanf("%d %d", &a, &n);
printf("a aa aaa ... a(n个a)之和为:%d\n", fn(a, n));
return 0;
}
```
在这个程序中,我们定义了一个名为`fn`的函数,用于计算`a aa aaa ... a(n个a)`的和。在`fn`函数中,我们使用了一个`sum`变量来保存累加的结果,使用一个`base`变量来保存当前位数上的值。在每次循环中,我们将`base`增加一个`a`,并将其加入到`sum`中。
在`main`函数中,我们首先读入两个正整数`a`和`n`,然后调用`fn`函数来计算`a aa aaa ... a(n个a)`的和,并将结果打印出来。
阅读全文