李孟同人文:C语言程序一个简单的问题

来源:百度文库 编辑:高考问答 时间:2024/04/28 07:19:14
j!=(j-1)!*j
请详细解释。
个位你们都想错了,
! 是逻辑非运算。

呵呵,全都学C入魔了,一看到!就以后是非~~

这是阶乘的递归定义,不过不完整,没有初始条件。
一般我们学的阶乘定义是 j! = j*(j-1)*(j-2)*……*2*1;
但是,由于
(j-1)! = (j-1)*(j-1)*……*2*1;
所以阶乘又可以写成

j! = j*(j-1)! (当j>0)
0! = 1;
后面那个0!=1是终止条件,不然只有上面的j!=j*(j-1)!的话是个死循环。

j!就是j的阶乘
j!就是用j*(j-1)*(j-2)*(j-3)……*1
(j-1)!就是(j-1)*(j-2)*(j-3)……*1
所以j!=(j-1)!*j

这是一个合法的(c语言)表达式么?
怀疑

该题要用到递归

应该不是C的表达式。

"!="可能是"不等于符号"