求最大公约数c语言代码
c#include <stdio.h>
// 函数声明
int findGCD(int a, int b);
int main() {
int num1, num2;
// 从用户输入获取两个整数
printf("输入两个整数: ");
scanf("%d %d", &num1, &num2);
// 调用函数计算最大公约数
int gcd = findGCD(num1, num2);
// 打印结果
printf("最大公约数是: %d\n", gcd);
return 0;
}
// 函数定义:计算最大公约数
int findGCD(int a, int b) {
while (a != b) {
if (a > b) {
a -= b;
} else {
b -= a;
}
}
return a;
}
这个程序通过欧几里德算法迭代计算两个整数的最大公约数。输入两个整数,程序将输出它们的最大公约数。希望对你有帮助!
c#include <stdio.h>
// 函数声明
int findGCD(int a, int b);
int main() {
int num1, num2;
// 从用户输入获取两个整数
printf("输入两个整数: ");
scanf("%d %d", &num1, &num2);
// 调用函数计算最大公约数
int gcd = findGCD(num1, num2);
// 打印结果
printf("最大公约数是: %d\n", gcd);
return 0;
}
// 函数定义:计算最大公约数
int findGCD(int a, int b) {
int temp;
while (b != 0) {
temp = b;
b = a % b;
a = temp;
}
return a;
}
这个代码片段使用辗转相除法,通过取余操作迭代计算两个整数的最大公约数。这种方法通常比欧几里德算法更高效。希望这个版本的代码对你有帮助!