求sn=a+aa+aaa+…+aa…a 之值,其中a是一个数字。例如:2+22+222+2222+22222 n个a ,此时n=5,n由键盘输入。C语言
时间: 2023-10-22 18:05:04 浏览: 74
C语言课程设计
以下是一个使用 C 语言编写的求 `sn` 的程序:
```c
#include <stdio.h>
int main()
{
int n, a, i;
long long sn = 0, an = 0;
printf("请输入数字 a 和正整数 n:");
scanf("%d%d", &a, &n);
for (i = 1; i <= n; i++) {
an = an * 10 + a; /* 计算 an */
sn += an; /* 累加到 sn 中 */
}
printf("s%d = %lld\n", n, sn);
return 0;
}
```
程序的流程如下:
1. 首先,从用户输入中读取数字 `a` 和正整数 `n`。
2. 然后,使用一个循环计算从 `a` 开始到 `n` 个 `a` 的数列中的每一项,并累加到 `sn` 中。
3. 在循环结束后,输出 `sn` 的值。
4. 最后,程序结束。
需要注意的是,由于 `sn` 的值可能非常大,因此在计算 `sn` 和输出结果时,需要使用 `long long` 类型,以避免溢出。
阅读全文