递归函数的问题
下面是一段很简单的递归代码,但是为什麽我无法得到正确的结果?不论输入什麽,结果都是输出0。不会和编译系统有关吧?我在linux下编译的。
高人帮忙看一下,谢谢!
#include <iostream>
using namespace std;
int findmultipleoftwo(int);
int main()
{
int input,answer;
cout<<"Enter some integer: ";
cin>>input;
answer=findmultipleoftwo(input);
cout<<input<<" can be divide by two "<<answer<<" times!"<<endl;
return 0;
}
int findmultipleoftwo(int a)
{
static int count;
a=a/2;
count++;
if(a>2)
{
findmultipleoftwo(a);
}
else
{
return count;
}
}