C语言 求数列 S(n) = a + aa + aaa + …aa…a (n 个 a)的和

求数列S(n)=a+aa+aaa+...aa...a(n个a)之值,其中a是一个数字,n表示a的位数,n由键盘输入。例如2+22+222+2222+22222(此时n=5)

这个程序读取用户输入的一个数字 a 和一个正整数 n,计算并输出数列 S(n) 的值。

cpp 复制代码
#include <stdio.h>
#include <math.h>

int main() {
    int a, n;
    long sum = 0, term = 0;
    printf("输入一个数字 a 和一个正整数 n: ");
    scanf("%d %d", &a, &n);

    for (int i = 1; i <= n; i++) {
        term = term * 10 + a;  // 构造当前项
        sum += term;           // 累加到总和
    }

    printf("数列 S(n) 的值: %ld\n", sum);
    return 0;
}

解代码说明

  1. term 变量用于存储当前项的值,从 a 开始,每次在末尾添加一个 a
  2. sum 变量用于累加所有项的值。
  3. 在循环中,term 每次乘以 10 并加上 a,从而形成 a, aa, aaa 等值,然后累加到 sum
相关推荐
前端摸鱼匠8 小时前
【AI大模型春招面试题11】什么是模型的“涌现能力”(Emergent Ability)?出现条件是什么?
人工智能·算法·ai·自然语言处理·面试·职场和发展
sqmw8 小时前
MFCMouseEffect:把桌面输入反馈这件事,做成一个真正可扩展的引擎
c++·插件·引擎·鼠标特效·键鼠指示·鼠标伴宠
MORE_778 小时前
leecode-合并区间-贪心算法
算法·贪心算法
沈阳信息学奥赛培训8 小时前
#undef 指令 (C/C++)
c语言·开发语言·c++
2401_873204658 小时前
分布式系统安全通信
开发语言·c++·算法
sw1213899 小时前
C++中的代理模式实战
开发语言·c++·算法
ballball~~10 小时前
ISP-CCM(Color Correction Matrix)
图像处理·数码相机·算法
Sunshine for you10 小时前
实时操作系统中的C++
开发语言·c++·算法
史蒂芬_丁11 小时前
C++深度拷贝例子
java·开发语言·c++
中科院提名者11 小时前
BPE 算法的硬核拆解——理解词表(Vocabulary)是如何从零训练出来的,以及字符串是如何被切碎的
算法