用c++编写一个函数,求两个正整数m和n的最大公约数,函数原型为 void fun(int m , int n)
时间: 2024-03-17 22:45:46 浏览: 82
用c++求两个数最大公约数
同样使用欧几里得算法,可以编写如下的C++代码:
```c++
void fun(int m, int n) {
int temp;
while (n != 0) {
temp = m % n;
m = n;
n = temp;
}
cout << "最大公约数为:" << m << endl;
}
```
该函数使用了迭代的方式,先对m和n进行求余操作,将余数保存在temp变量中,然后将n的值赋给m,将temp的值赋给n,继续进行下一轮循环,直到n等于0时,m的值就是最大公约数。
在函数内部直接输出最大公约数,而不是返回这个值,因为函数原型中没有返回值。如果需要返回最大公约数,可以将函数原型改为int fun(int m, int n)。
阅读全文