题目描述
求1+2!+3!+4!+…+30!。
科学计数法,保留两位小数。
代码解释
包含标准输入输出库:
#include <stdio.h>
这一行代码是预处理指令,它告诉编译器在实际编译之前包含标准输入输出库(stdio.h)。这个库提供了进行输入输出操作的功能,比如printf
函数。定义主函数:
int main(void)
是C程序的入口点,void
表示这个函数不接受任何参数。定义变量:
double sum
:用于累加序列的和,初始化为0。double j
:用于存储连续相乘的结果,初始化为1(因为乘法序列的第一个值是1)。
计算序列和:
- 进入一个
for
循环,循环变量i
从1开始,直到30。- 在每次循环中,首先更新
j
的值,将j
与i
相乘(j = j * i
),这样逐步计算出连续相乘的结果。 - 然后将
j
的值加到sum
上,累加序列的和。
- 在每次循环中,首先更新
- 进入一个
输出结果:
printf("%.2e\n", sum);
这个函数调用用于输出计算得到的序列和。%.2e
是格式化字符串,表示输出一个双精度浮点数,保留两位小数,并使用科学计数法表示。函数返回:
return 0;
表示main
函数执行成功并返回0。在C语言中,main
函数的返回值通常用于表示程序的退出状态,其中0表示成功。
源代码
#include <stdio.h>
int main(void)
{
double sum = 0;
double j = 1;
for (int i = 1; i <= 30; i++)
{
j = j * i;
sum = sum + j;
}
printf("%.2e\n", sum);
return 0;
}