【C语言】题目30 - 输入两个数字,求它们的最大公约数

301 阅读2分钟

一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第10天,点击查看活动详情

🚀write in front🚀

🔎大家好,我是泽奀,希望你看完之后,能对你有所帮助,不足请指正!共同学习交流🔎
🎁欢迎各位→点赞👍 + 收藏⭐️ + 留言📝
✉️我们并非登上我们所选择的舞台,演出并非我们所选择的剧本📩
💬总结:希望你看完之后,能对你有所帮助,不足请指正!共同学习交流🖊

前言

那么今天就开始做第三十题,不知不觉就第三十题了。我感觉我又行了!

题目描述

输入两个数字,求它们的最大公约数。

题目分析

最大公因数,也称最大公约数、最大公因子,指两个或多个整数共有约数中最大的一个。

a,b的最大公约数记为(a,b),同样的,a,b,c的最大公约数记为(a,b,c),多个整数的最大公约数也有同样的记号。求最大公约数有多种方法,常见的有质因数分解法、短除法、辗转相除法、更相减损法。与最大公约数相对应的概念是最小公倍数,a,b的最小公倍数记为[a,b]。

这个也是在数学当中我们会经常用到短除法。

题目代码

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<stdlib.h>
int main(void)
{
	int a = 0, b = 0, t = 0;
	printf("请输入两个数字:");
	scanf("%d %d", &a, &b);
	while (t = a%b)
	{
		a = b;
		b = t;
	}
	printf("|--------------------|\n");
	printf("|两个数的最大公约数:%d|\n", b);
	printf("|--------------------|\n");
	return 0;
}

运行结果

请输入两个数字:10 20

两个数的最大公约数:10

最后

那么,今天的练习就先到这里啦(^∀^●)ノシ