"stdio.h"
main()
{
int
n,i
double
p=1//这里用的是Double,不用Int,因为Int范围太小了
printf("请输入一个数字:")
scanf("%d",&n)
for(i=2i<=ni++)
p*=i
printf("n!=%lf\n",p)
}
利用for循环,不断求1*2一直乘到n,最后输出n!
1、打开vs2017软件,新建c语言的工程,首先开头引入头文件,然后调用先调用一下求阶乘的函数和空的主函数,最下方定义prime函数用来求阶乘:
2、主函数中用scanf函数接受用户输入的的数字,接着将输入的数传入处理阶乘的函数中完成计算,最后输出打印结果。prime函数有一个参数,首先判断是否为正数,然后用prime函数自身乘以参数s,最后返回值即可完成:
3、将程序编译运行,弹出窗口输入任意的数,计算阶乘;这里输入7,得到结果是5040。以上就是C语言求阶乘的方法:
一、 算法:
1 输入N;
2 循环输入N个数值;
3 将每个数值累加到结果上;
4 循环结束后输出结果。
二、代码:
#include <stdio.h>int main()
{
int N, s=0, n
scanf("%d",&N)//输入N
while(N--)//循环N次
{
scanf("%d",&n)//输入一个数。
s+=n//累加。
}
printf("%d\n", s)//输出结果
return 0
}
三、运行截图示例: