如果m小于n,你就把n的值给m,那么两个数不就相等了?
k也没有初始化
另外m,n一直变,当你算最小公倍数的时候,m和n已经不是最开始的m和n了
其实不用管m和n的大小,如果m小于n,那么在循环里就会换过来的
再提供一种递归的
1.int m,n,k;改成int m,n,k,t;2.整个if...while部分改成:k=n*m;t=n%m;while(t){n=m;m=t;t=n%m;}3.m*n/m改成k/m