给定两个均不超过9的正整数a和n,要求编写程序求a+aa+aaa++⋯+aa⋯a(n个a)之和。 输入格式: 输入在一行中给出不超过9的正整数a和n。 输出格式: 在一行中按照“s = 对应的和”的格式输出。 输入样例: 2 3 输出样例: s = 246
时间: 2023-12-04 15:38:36 浏览: 65
给定两个均不超过9的正整数a和n,要求编写程序求a+aa+aaa++⋯+aa⋯a(n个a)之和。
5星 · 资源好评率100%
这道题目要求我们编写程序求a+aa+aaa++⋯+aa⋯a(n个a)之和。我们可以先实现一个fn()函数,返回一个n个a组成的数,就是说这个数的各个位数都是a。例如222,就是既将2作为百位,作为十位,也作为个位。其实就是将222拆分成200+20+2。具体实现看代码。然后再实现sumA函数,在理解了fn()函数的基础上再进行一次求和。具体实现看代码。最后在主函数中调用这两个函数即可。代码如下:
```
#include <stdio.h>
//fn函数实现,如下:
int fn(int a, int n) {
int sum1 = 0;
//数是n位数就进行n次加法运算求和
for(int i = 1; i<=n; i++) {
sum1 += a;
a *= 10;
}
return sum1;
}
//sumA函数实现,如下:
int SumA( int a, int n) {
//sum2用来求n个a
int sum2 = 0; //sign用来存最终的和
int sign = 0;
for(int i = 1; i<=n; i++) {
sum2 += a;
a *= 10;
sign += sum2;
}
return sign;
}
int main() {
int a, n;
scanf("%d %d",&a,&n);
printf("s = %d\n", SumA(a, n));
return 0;
}
```
阅读全文