C语言习题

简介: 该文主要讨论计算序列 Sn=a+aa+aaa+... 的问题,其中a是一个数字,最后一项包含n个a。对于n=1, 3, 7的情况,文章提供了两种分析方法。第一种方法通过观察得出 tₙ=tₙ∗10+2 和 Sₙ=Sₙ+tₙ,第二种方法利用公式 tₙ=2*(10^n−1)。每种方法都配合图像展示了计算过程和结果。最后,文章扩展到当a由键盘输入(a≤9)时如何求Sₙ,只需将a的初始值改为用户输入,并使用`scanf`函数读取。同样给出了示例结果。

求Sn=a+aa+aaa+…,其中a为一个数字,最 后一项有n个a,即 n位a,设a=2,n由键盘输入,n<=9.要求分别验证n=1、3、7


分析1:


第n项用∁n表示,则由2=0∗10+2、22=2∗10+2、222=22*10+2可以得出tₙ=tₙ∗10+2,Sₙ=Sₙ+tₙ。


输出a+aa+aaa+......,需要在每一次求出tₙ的时候输出tₙ+的值,最后一项只输出tₙ。


如下:




结果为:






分析2:


第n项用tₙ表示,则由2=2∗(10−1)/9、22=2∗(10∗10−1)9、


222=2*(10*10*10−1)/9可以得出tₙ=2*(10^n−1),Sₙ=Sₙ+tₙ。


输出a+aa+aaa+......,需要在每一次求出tₙ的时候输出tₙ+的值, 最后一项只输出tn。


如下:




结果为:



在这题基础上,如果a改为键盘输入,要求a<=9,Sₙ的值是多少


分析:


只需要将a的值赋初值为2改为由键盘输入即可,可使用scanf函数


结果为:


目录
相关文章
TU^
|
6月前
|
存储 C语言
C语言习题~day35
C语言习题~day35
TU^
32 1
|
4月前
|
机器学习/深度学习 C语言
【C语言篇】递归详细介绍(基础概念习题及汉诺塔等进阶问题)
要保持最小的步数,每一次汉诺塔问题(无论是最初还是递归过程中的),如果此时初始柱盘子数为偶数,我们第一步是把最上面的盘子移动到中转柱,如果为奇数,我们第一步则是将其移动到目标柱。
100 0
【C语言篇】递归详细介绍(基础概念习题及汉诺塔等进阶问题)
TU^
|
6月前
|
编译器 C语言
C语言习题~day31
C语言习题~day31
TU^
27 2
TU^
|
6月前
|
算法 程序员 C语言
C语言习题~day36
C语言习题~day36
TU^
44 1
TU^
|
6月前
|
存储 C语言
C语言习题~day34
C语言习题~day34
TU^
36 1
TU^
|
6月前
|
算法 C语言
C语言习题~day33
C语言习题~day33
TU^
31 1
TU^
|
6月前
|
C语言
C语言习题~day32
C语言习题~day32
TU^
19 1
TU^
|
6月前
|
C语言
C语言习题~day30
C语言习题~day30
TU^
24 1
TU^
|
6月前
|
自然语言处理 C语言 C++
C语言习题~day29
C语言习题~day29
TU^
25 1
TU^
|
6月前
|
存储 C语言
C语言习题~day28
C语言习题~day28
TU^
22 1