习题4-4 特殊a串数列求和
给定两个均不超过9的正整数a和n,要求编写程序求a+aa+aaa++⋯+aa⋯a(n个a)之和。
输入格式:
输入在一行中给出不超过9的正整数a和n。
输出格式:
在一行中按照“s = 对应的和”的格式输出。
输入样例:
2 3
输出样例:
s = 246
(终于把静态变量解法做出来了!)
思路:该解法利用了静态变量由于其存储单元被保留,以后调用都使用前一次调用保留的值,这样的话,我们只需要设法计算第一位的数,然后,加上静态变量item来补齐剩下的数。
当然,寻找k和i的关系也重要。
代码如下:
#include <stdio.h>
#include<math.h>
int main()
{
int i,a,n,k;
int sum;
static int item=0;
scanf("%d %d",&a,&n);
sum=0;
k=1;
for(i=1;i<=n;i++){
k=pow(10,(i-1));
item=a*k+item;
sum+=item;
}
printf("s = %d\n",sum);
return 0;
}
本文介绍了一种解决特殊a串数列求和问题的方法。对于给定的正整数a和n,通过静态变量item保留每次计算的结果,逐步累加a+aa+aaa+...+aa...a(n个a)的总和。代码实现简洁高效。
&spm=1001.2101.3001.5002&articleId=127699739&d=1&t=3&u=025bf2482dce4710b9ac9ca345b3d3cc)
2145

被折叠的 条评论
为什么被折叠?



