请高手进来帮我看看这个求阶乘的C++代码为什么不对~~~
本人刚开始学习C++语言,练习题里有一个求阶乘的题。我写出来后debug反应unsequencedmodificationandaccessto"x"。我也不知道是什么意...
本人刚开始学习C++语言,练习题里有一个求阶乘的题。我写出来后debug反应 unsequenced modification and access to "x"。我也不知道是什么意思。请高手指点!!!谢谢!
#include <iostream>
using namespace std;
int fct(int x);
int main() {
int n;
cout << "Please enter a number:" << endl;
cin >> n;
for (n = 1; n >=1; n--) {
cout << "The factorial is:" << fct(n) << endl;
system("PAUSE");
return 0;
}
}
int fct(int x) {
return x * x--;
} 展开
#include <iostream>
using namespace std;
int fct(int x);
int main() {
int n;
cout << "Please enter a number:" << endl;
cin >> n;
for (n = 1; n >=1; n--) {
cout << "The factorial is:" << fct(n) << endl;
system("PAUSE");
return 0;
}
}
int fct(int x) {
return x * x--;
} 展开
4个回答
展开全部
#include <iostream>
using namespace std;
int fct(int x);
int main()
{
int n;
cout << "Please enter a number:" << endl;
cin >> n;
cout << "The factorial is:" << fct(n) << endl;
system("PAUSE");
return 0;
}
int fct(int x)
{
if (x == 0 || x == 1) {
return 1;
} else {
return x * fct(x-1);
}
}
展开全部
int fct(int x) {
if(n==1 || n==0)
return 1;
else
return x*f(x-1);
}
追问
我数学差,脑子不好使。想请问为什么最后是 x * fct(x-1) 而不是直接 x * (x-1)呢?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你不能去乘x-- , x * (x-1)是可以的再说你这不是求阶乘啊.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-10-11
展开全部
那个for循环明显有问题,应该重定义个i作为for循环参数
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询