1.题目描述
输入三个正整数x,y,z,求它们的最大公约数(Greatest common Divisor) g:最大的正整数g>=1满足 x,y,z都是g的倍数,即 (x mod g)=(y mod g)=(z mod g)= 0。
2.输入格式
输入一行三个正整数 x, y,z。
3.输出格式
输出一行一个整数 g,表示 x,y,z的最大公约数,
4.输入输出样例
输入1
12 34 56
输出1
2
输入2
28 70 28
输出2
14
5.说明/提示
样例解释
样例 1
12=2x6,34=2x17,56=2x28,g=2.
样例 2
28=14x2,70=14x5,28=14x2,g= 14。
数据规模
所有数据满足 1 ≤ x,y,z≤ 106
6.代码:
#include <stdio.h>
// 函数声明:计算两个数的最大公约数
int gcd(int a, int b) {
while (b != 0) {
int temp = b;
b = a % b;
a = temp;
}
return a;
}
int main() {
int x, y, z;
// 输入三个正整数
scanf("%d %d %d", &x, &y, &z);
// 求出x和y的最大公约数,然后与z求最大公约数
int result = gcd(gcd(x, y), z);
// 输出结果
printf("%d\n", result);
return 0;
}
标签:正整数,数间,int,28,样例,C语言,最大公约数,输入
From: https://blog.csdn.net/zxn275266/article/details/141000647