- 已知两个数,m和n,先使得m>n;
- 得到m%n的余数r;
- 若r=0,则n为最大公约数,程序结束;
- 若r不等于0,将n的值赋给m,r赋值给n,继续相除得到新的r,直到r等于0,程序结束;
- 代码如下:
-
#include<stdio.h> int main() { int m, n, temp, r; printf("请输入两个数: "); scanf_s("%d%d", &m, &n); if (m < n) { //进入循环前,要求m>n; temp = m; m = n; n = temp; } while ((r=m%n) !=0) //判断m%n的值是否为0 { m = n; n = r; } printf("最大公约数是%d\n", n); return 0; }
【C语言-12】输入两个自然数,求最大公约数
最新推荐文章于 2023-03-01 11:03:31 发布