/*-------------------------------------------------------
编程用“碾转相除法”求两个整数的最大公约数,两个整数由键盘输入。(注:使用while循环)
-------------------------------------------------------*/
#include <stdio.h>
main()
{
int m,n,t;
printf("请输入两个整数:");
scanf("%d%d",&m,&n);
t=m%n;
/**********Program**********/
while(m%n!=0)
{
t=m%n;
m=n;
n=t;
}
/********** End **********/
printf("最大公约数是:%d\n",n);
}
这段程序使用了“碾转相除法”来求两个整数的最大公约数,其中两个整数由键盘输入。
在程序中,我们首先声明了变量m、n和t,用来存储两个整数和中间结果。
然后,通过scanf函数从键盘输入两个整数,并将它们分别存储在变量m和n中。
接下来,使用while循环来实现碾转相除法的计算过程,直到m除以n的余数等于0为止。在循环体中,我们首先通过m%n求出m除以n的余数,并将结果存储在变量t中。然后,将变量n的值赋给变量m,将变量t的值赋给变量n,相当于完成了一次“碾转”的操作。
最后,当循环结束时,变量n中存储的值就是最大公约数,我们通过printf函数输出结果。