最大公约数

题目描述

输入两个正整数a,b,求a,b的最大公约数。

输入

输入正整数a和b,中间用空格隔开

输出

输出最大公约数

样例输入

c 复制代码
144 84

样例输出

c 复制代码
12

程序分析 :运用辗转相除法(欧几里得算法)

  1. 用较大数除以较小数,取余数;
  2. 用除数作为新的被除数,余数作为新的除数,重复步骤1,直到余数为0;
  3. 最后一个非零余数即为最大公约数。
c 复制代码
#include <stdio.h>
int main()
{
	int a,b,c;
	scanf("%d%d",&a,&b);
	c=a%b;
	while(c!=0){
		a=b;
		b=c;
		c=a%b;
	} 
	printf("%d",b);
	return 0;
}
相关推荐
凌肖战18 分钟前
力扣网C语言编程题:三数之和
c语言·算法·leetcode
心软且酷丶2 小时前
leetcode:263. 丑数(python3解法,数学相关算法题)
python·算法·leetcode
我最厉害。,。2 小时前
C2远控篇&C&C++&ShellCode分离&File提取&Http协议&Argv参数&Sock管道
c语言·c++·http
Cyrus_柯2 小时前
C++(面向对象编程——关键字)
开发语言·c++·算法·面向对象
大龄Python青年3 小时前
C语言 函数怎样通过数组来返回多个值
c语言·开发语言
LQYYDSY3 小时前
【C语言极简自学笔记】重讲运算符
c语言·开发语言·笔记
2013编程爱好者3 小时前
C++二分查找
开发语言·c++·算法·二分查找
এ᭄画画的北北5 小时前
力扣-139.单词拆分
算法·leetcode
完美的奶酪5 小时前
Leetcode-2537. 统计好子数组的数目
算法·leetcode