解题思路:
Sn=a+aa+aaa+...,可以看成是Sn=A1+A2+A3+....
而A1=a*10^0, A2=A1+a*10^1, A3=a*10^2+A2,所以可以得出 An=a*10^(n-1)+A(n-1)
换句话说这里就可以用递归或者求和的方式,本片文章就用求和的方式来解答:
设置一个sum初值为0,然后每一次求出An的值,最后在对每一项An求和
注意事项:
两次求和,第一次求An的值,第二次求Sn,也就是An相加
参考代码:
#include <stdio.h>
#include <math.h>
#define a 2
int main()
{
int n, Sn = 0, sum = 0;
scanf("%d", &n);
for (int i = 0; i < n; i++)
{
sum += a * pow(10, i);
Sn += sum;
}
printf("%d", Sn);
return 0;
}
0.0分
0 人评分
大神老白 (C语言代码)浏览:665 |
哥德巴赫曾猜测 (C语言代码)浏览:1130 |
求圆的面积 (C语言代码)浏览:1360 |
WU-拆分位数 (C++代码)浏览:815 |
C语言程序设计教程(第三版)课后习题6.2 (C语言代码)浏览:565 |
核桃的数量 (C语言代码)浏览:891 |
C二级辅导-阶乘数列 (C语言代码)浏览:580 |
2006年春浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:375 |
1199题解浏览:704 |
简单的a+b (C语言代码)浏览:593 |