求高手 1! 2! 3! .... n!输出其结果 要求N(3<=N<=20)从健盘输入且用函数实现阶乘的计算 在线等

来源:百度知道 编辑:UC知道 时间:2024/06/15 03:18:50

coldboy775,你好
程序代码如下:结果是以科学计数法输出的,你可以改成其它的。
#include "stdio.h"
double factorial(int n){
if(n<=0) return 1;
else return n*factorial(n-1);
}
void main()
{
int i;
for(i=3;i<=20;i++)
printf("%d的阶乘是%e\n",i,factorial(i));
}

C编写的:
#include "stdio.h"
main()
{
int n,j,p=1,t=1;
loop:scanf("%d",&n);
if(3<=n&&n<=20)
{
for(j=1;j<=n;j++)
{
p=p*j;
t=t*p;
}
printf("%ld",t);
}
else goto loop;
}

WIN-TC 编译通过,
输入3 输出12
输入4 输出288

如果用c做!建议先编个阶乘的函数jc(n),在for(n=1;n<=a;n++);s=s*jc(n)/*a为你键盘输入的数字*/,输出s就行了! 大体就是这样了!

要用什么编程语言?