读书人

函数不接受两个参数解决办法

发布时间: 2013-07-04 11:45:44 作者: rapoo

函数不接受两个参数

#include <iostream>
using namespace std;
int GCD,MUL;
void gcdn();
int main()
{
int a,b;
cout<<"Please input two integers:"<<endl;
cin>>a>>b;
gcdn(a,b);
MUL=a*b/GCD;
cout<<"The gcd is : "<<GCD<<endl;
cout<<"The mul is :"<<MUL<<endl;
}
void gcdn(int x,int y)
{
while(!x==0)
{
x=y+x%y;
y=x-y;
x=x-y;
}
GCD=x;
}

为什么这样就不行了?
[解决办法]
void gcdn(int x,int y)
{
while(!x==0)
{
x=y+x%y;
y=x-y;
x=x-y;
}
GCD=x;
}

根据 x=y+x%y;
y=x-y;
x=x-y;
可以知道是先y先到0或负数, x=y+x%y;无法执行。这是程序也将无法执行了。

读书人网 >C++

热点推荐