日本壁纸不好贴:为什么有的程序一定要用调用函数才正确?会不会是我的编译器有问题?

来源:百度文库 编辑:神马品牌网 时间:2024/04/28 06:59:52
#include<iostream>
using namespace std;
int main()
{int n,x;float p;

cout<<"请输入n、x:";
cin>>n>>x;

if(n==0) p=1;
else if(n==1) p=x;
else if(n>=1) p=((2*n-1)*x*p((n-1),x)-(n-1)*p((n-2),x))/n;/*问题出在这,这题只能写成调用函数,否则运行错误,我用的VC++6.0,会不会是我的编译器有问题?*/

cout<<"输出n="<<n<<",x="<<x<<endl;
cout<<"p(n,x)="<<p<<endl;

return 0;}
你的那句是递归函数,非常有道理,我明白了,谢谢,难怪这题必须要用调用函数了

p(n,x)不是C++本身带的函数,你需要对p(n,x)进行定义,你不定义电脑怎么知道p(n,x)是个什么,是n-x还是n+x?如果p(n,x)这个函数只是个表达式,你把所有的p(n,x)换成那个表达式就行了,但是看你这个程序,p(n,x)很有可能是递归函数啊。