发布网友 发布时间:2024-09-19 08:01
共2个回答
热心网友 时间:2024-09-29 04:09
几个地方需要修改: 1. 最大公约数函数,首先必须满足a>=b,所以你在函数开始就应该先判断a是不是比b大,如果a比b小,则需要先交换a,b的值; 2. p=a%b;,如果p=0,那么最大公约数是b不是a,所以你do...while循环体是错误的,需要修改过来,而且既然你开始就已经进行了一次取模,则后面的循环不该用do...while,而应该用while循环: p = a % b; while(p != 0) { a = b; b = p; p = a % b; } 3. 最小公倍数=a*b/(ab最大公约数),所以你最小公倍数的方法可以修改为:int MinCommonMultiple(int a, int b, int maxFaxtor) { return a * b / maxFaxtor; }热心网友 时间:2024-09-29 04:14
把main函数换成下面这样试试...