寻找两个正整数的最大公约数

1.编程思路:

辗转相除法:假设a,b是两个正整数,r=a%b,然后把b赋值给a,r赋值给b,一直循环,直到r=0;退出循环,输出b则为ab的最大公约数。

2.代码实现如下:

#include<stdio.h> int main() { printf("计算两个数的最大公约数——辗转相除法\n"); int a, b; int r=0; printf("请输入两个正整数:\n"); scanf("%d%d", &a, &b); while (r = a % b) //a%b不等于0则一直循环 { a = b; b = r; } printf("最大公约数是%d:\n", b); return 0; }

3.运行截图

运行截图2.png