塔里木大学C语言实验:分数序列求和与阶乘计算

需积分: 0 0 下载量 192 浏览量 更新于2024-08-03 收藏 30KB DOCX 举报
实验8是塔里木大学《C语言程序设计》课程中的一个实践环节,旨在帮助学生通过编写代码来理解和应用基础的编程技巧。本实验涉及三个不同的程序部分: 1. 分数序列求和: 在第一个程序中,学生需要实现`sum(int m)`函数,用于计算公式 `y = (1/100*100 + 1/200*200 + 1/300*300 + ... + 1/m*m)` 的结果。当`m=2000`时,输出为 `0.000160`。学生需要填充代码空白,计算每个分母对应的倒数并累加到`y`变量中。`main`函数则调用`sum`函数并打印结果。 2. 递推序列求和: 第二个程序涉及到计算一个递推序列(例如2, 1, 1/2, 1/6, 1/24...)的前n项和。在这个部分,学生需要填写代码来初始化`a`和`b`的值,然后使用循环更新`s`(初始值可能为空),每次迭代更新`a`和`b`的值,并在循环结束后返回`s`。当`n=5`时,输出应该是`8.391667`。 3. 阶乘计算: 最后一个程序的目标是计算1! + 2! + 3! + ... + n!的和。学生需要实现`count(int n)`函数,其中`long`类型的`sum`变量存储累加结果,`p`为当前项的阶乘。通过`for`循环计算从1到n的阶乘,每次迭代更新`p`值,然后将`p`乘以`n`并累加到`sum`中。`main`函数调用`count`函数并输出结果。 这些程序旨在练习学生的循环控制、变量赋值、函数调用以及处理浮点数的能力。同时,通过解决这些问题,学生可以巩固C语言中的基本算术操作和程序逻辑结构。完成这些实验有助于提升算法理解、数据结构运用以及调试能力。