C++调用函数有关问题,(c++Primer)

C++调用函数问题,求助(c++Primer)
#include <iostream>
using namespace std;
int gcd(int v1,int v2)
{
while(v2)
{
int temp=v2;
v2=v1&v2;
v1=temp;
    }
return v1;
}
int main()
{
cout<<"输入两个整数"<<endl;
int i,j;
cin>>i>>j;
cout<<"最大公约数为:"<<gcd(i,j)<<endl;
    return 0;
return 0;
}

这是c++Primer函数这章的例子,我自己敲进VS2010,可以编译成功,但是当我输入完2个整数之后无法得出最大公约数,在VC6.0中也试了,输完按回车没反应,求大神们帮忙看看!

------解决方案--------------------
把%打成&了?