首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

函数的递归调用求阶乘的有关问题

2012-03-12 
函数的递归调用求阶乘的问题#include iostreamusing namespace stdint factorial(int n)int main(){co

函数的递归调用求阶乘的问题
#include <iostream>
using namespace std;
int factorial(int n);
int main()
{
cout<<factorial(8)<<"\n";
return 0;
}
int factorial(int n)
{
if((n=0)||(n=1))
return 1;
else
{
return n*factorial(n-1);
}
}
编写了一段程序,利用函数的递归调用求阶乘的问题,编译的时候出来的答案却为1,求高手看看问题处在哪里?

[解决办法]
if((n=0)||(n=1))
return 1;
应该是 if (n == 1 || 1 == n)

[解决办法]
if((n==0)||(n==1))
原条件写成赋值、始终为真

热点排行