c语言for阶乘函数 C语言阶乘函数

c语言求阶乘的函数

阶乘:

创新互联主要从事成都网站建设、成都做网站、网页设计、企业做网站、公司建网站等业务。立足成都服务新华,十多年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18980820575

阶乘是基斯顿·卡曼(Christian

Kramp,1760~1826)于

1808

年发明的运算符号,是数学术语。

一个正整数的阶乘(英语:factorial)是所有小于及等于该数的正整数的积,并且有0的阶乘为1。自然数n的阶乘写作n!。1808年,基斯顿·卡曼引进这个表示法。

亦即n!=1×2×3×...×n。阶乘亦可以递归方式定义:0!=1,n!=(n-1)!×n。

C语言

C

语言中,使用循环语句可以很方便的求出阶乘的值,下面介绍一个很简单的阶乘例子。(因为网上多数是比较麻烦的方法)

【计算出“

1!+

2!+

3!+

……

+

10!”的值是多少?】

#includestdio.h

int

main()

{

int

x;

long

j=1,sum=0;

for(x=1;x=10;x++)

{

j*=x;

sum+=j;

}

printf("1!+2!+...+10!=%ld\n",sum);

return

0;

}

/*结果:4037913*/

Pascal中program

test;

varn:longint;

function

jc(n:longint):qword;

begin

if

n=0

then

jc:=1

else

jc:=n*jc(n-1)end;

begin

readln

(n);

writeln

(jc(n))end.

C++

#includeiostream

using

namespace

std;

long

long

f(int

n)

{

long

long

e=1;

if(n0)

e=n*f(n-1);

coutn"!="eendl;

return

e;

}

int

main()

{

int

m=20;

f(m);

return

0;

}

以上使用

C++

11

标准

也可以利用积分求浮点数阶乘:

#includecstdio

#includecmath

double

s;

const

double

e=exp(1.0);

double

F(double

t)

{

return

pow(t,s)*pow(e,-t);

}

double

simpson(double

a,double

b)

{

double

c=a+(b-a)/2;

return

(F(a)+4*F(c)+F(b))*(b-a)/6;

}

double

asr(double

a,double

b,double

eps,double

A)

{

double

c=a+(b-a)/2;

double

L=simpson(a,c),R=simpson(c,b);

if(fabs(L+R-A)=15*eps)

return

L+R+(L+R-A)/15.0;

return

asr(a,c,eps/2,L)+asr(c,b,eps/2,R);

}

double

asr(double

a,double

b,double

eps)

{

return

asr(a,b,eps,simpson(a,b));

}

int

main()

{

scanf("%lf",s);

printf("%lf\n",asr(0,1e2,1e-10));

return

0;

}

c语言中for语句编写阶乘

为什么要求30的价乘?数相当大啊~~~

简单写一个,希望符合要求哈~

#include

float

func(int

n){

if(n==1)

return

1;

return

(float)(n*func(n-1));

}

void

main(){

int

n;

printf("\nfactorial

of

:");

scanf("%d",n);

printf("result

is

%.0f\n",func(n));

}

运行过程:

factorial

of

:30(用户输入要求价乘的数,这里我们输入30)

result

is

265252859812191068000000000000000

阶乘如何用c语言实现?

1、首先打开CodeBlocks编辑器,新建一个空白页面,写入头文件和主函数:

2、然后定义需要的变量,编写一个输入函数接受用户输入的数值,使用for循环实现阶乘计算,每次循环都用sum变量乘以循环的下标即可实现阶乘,最后需要编写输出函数,输出结果:

3、最后编译程序,输入一个数字,即可看到计算出正确的结果:


当前文章:c语言for阶乘函数 C语言阶乘函数
文章路径:http://scjbc.cn/article/hppddo.html

其他资讯