1、打开vc6.0,新建一个vc项目,添加头文件,添加一个空的main函数,这里先定义一个用来求阶乘的函数,函数的参数为i,阶乘就是不断的和前面的一个数相乘,这里就是不断和fact函数相乘,之后编写主函数的内容:
2、在main函数定义int类型变量sum,然后调用fact()将返回值赋予sum,最后使用printf打印sum的值:
3、最后编写程序好后,来运行程序观察结果,这里可以看到打印出了6的阶乘。以上就是C语言用递归的方式求阶乘的过程:
最基础的思路,是逐个求阶乘,并累加。不过由于阶乘是从1乘到n,所以每个数都单独求一次阶乘,会有很多重复运算,影响效率。所以更快捷的方式是,在上一个数的阶乘基础上,直接乘上本身,得到当前数的阶乘。
以此为主导,代码如下:
#include <stdio.h>
int main()
{
int n, i, n1 = 1,s=0
scanf("%d",&n)//输入n值。
for(i=1i <= ni ++)
{
n1*=i//计算i的阶乘。
s+=n1//累加。
}
printf("%d\n", s)//输出结果。
}
1、首先打开vc6.0,新建一个项目。
2、添加头文件。
3、添加main主函数。
4、定义int变量i。
5、定义double类型变量sum,mix,并赋予初始值。
6、使用for循环求sum。
7、使用printf打印sum。
8、运行程序,看看结果。