关于递归中的变量初始化
在递归函数中,局部变量应该初始化
#include <iostream>
using namespace std;
int n;
int work(int x){
int sum;//sum=0 !!!!!!!!!!!!!!在不同编译器中是不同结果,全是错的
if(x==0||x==1) return 1;
for(int i=0;i<=x/2;i++){
sum+=work(i);
}
return sum;
}
int main(int argc, char** argv) {
cin>>n;
cout<<work(n)<<endl;
return 0;
}
查看16道真题和解析