阶乘:
阶乘是基斯顿-卡曼(Christian
年发明的运算符号,是数学术语.
C语言
在
C
语言中,使用循环语句可以很方便的求出阶乘的值,下面介绍一个很简单的阶乘例子.(因为网上多数是比较麻烦的方法)
【计算出"
①.!+
......
+
①.0!"的值是多少?】
#includestdio.h
int
main()
{
x;
long
j=1,sum=0;
for(x=1;x=10;x++)
j*=x;
sum+=j;
}
return
0;
Pascal中program
test;
varn:longint;
function
jc(n:longint):qword;
begin
if
n=0
then
jc:=1
else
jc:=n*jc(n-1)end;
readln
(n);
writeln
(jc(n))end.
C++
中
#includeiostream
using
namespace
std;
f(int
n)
e=1;
if(n0)
e=n*f(n-1);
coutn"!="eendl;
e;
f(m);
以上使用
标准
也可以利用积分求浮点数阶乘:
#includecstdio
#includecmath
double
s;
const
e=exp(1.0);
F(double
t)
pow(t,s)*pow(e,-t);
simpson(double
a,double
b)
asr(double
b,double
eps,double
A)
L=simpson(a,c),R=simpson(c,b);
eps)
asr(a,b,eps,simpson(a,b));
scanf("%lf",s);
改为double.
#include
stdio.h
stdlib.h
if(n==0||n==1)
n*f(n-1);
n,k,i;
printf("请输入一个数:");
scanf("%d",k);
for(i=1;i=k;i++)
printf("第%d个数为:",i);
scanf("%d",n);
printf("%d!=%f\n",n,f(n));
我把你写的稍微改了一下,你看看.
fun(int?i)
int?j;
int?sum=0;
for(j=1;j=i;j++)
sum=sum+j*j;
printf("s%d=%d\n",j,sum);
return?sum;
//上面的代码是求平方和
//求阶乘可以这样:
int?fun(int?i)//返回类型不可少
int?sum=1;//从1开始
sum=sum?*?j;
//主函数中是求阶乘的和
#include stdio.h
long n,sum=1;//10 以上的阶乘就比较大了
int i;
printf("请输入你要求的阶乘:")
scanf("%d",n);//先输入要求的数
for(i=n;i0;i--)//乘到1为止
sum*=i;
printf("%d != %d",n,sum);
return 0;
voidmain(){
intn,result;
printf("请输入一个数字,求它的阶乘:");
result=calc(n);
printf("结果:%d",result);
intcalc(intn){
intresult=1,i;
for(i=n;i=1;i--)
result=result*i;
returnresult;
扩展资料
C语言函数的调用
函数定义好以后,要被其它函数调用了才能被执行.C语言的函数是能相互调用的,但在调用函数前,必须对函数的类型进行说明,就算是标准库函数也不例外.
标准库函数的说明会被按功能分别写在不一样的头文件中,使用时只要在文件最前面用#include预处理语句引入相应的头文件.如前面使用的printf函数的说明是放在文件名为stdio.h的头文件中.