回复 4楼 NO跑老本
恩,谢谢呀!但你给的程序有错误,不能输出···你给出详解吧!
每一个阶段,都是一次不可或缺的成长···
#include <stdio.h> int main() { int n,m,r; // 这个temp没用到,我删了. printf("input n and m:"); scanf("%d%d",&m,&n); // 如果没有特别的需要, 这两个%d%d最好连着,免得不必要的符合. // 中间这段if是多余的, 你不交换, 后面一样会做.你可以仔细分析一下代码 r=m%n; // 你的算法没有问题,而且是非常好的, 别改. while( r!=0 ) /*求n和m的最大公约数*/ { m=n; n=r; r=m%n; } printf(" gongyueshu: %d\n",n); return 0; }