c语言用子函数求最大公约数代码
时间: 2024-02-28 14:49:12 浏览: 38
以下是使用C语言编写的求最大公约数的子函数代码:
```c
int gcd(int a, int b) {
if (b == 0) {
return a;
} else {
return gcd(b, a % b);
}
}
```
在主函数中调用该函数即可求出两个数的最大公约数。例如:
```c
int main() {
int a = 12, b = 18;
int result = gcd(a, b);
printf("The gcd of %d and %d is %d\n", a, b, result);
return 0;
}
```
输出结果为:
```
The gcd of 12 and 18 is 6
```
相关问题
写一段C语言的求最大公约数的子函数
好的,以下是一段用 C 语言编写的求最大公约数的子函数:
```
int gcd(int a, int b) {
int temp;
while (b != 0) {
temp = b;
b = a % b;
a = temp;
}
return a;
}
```
这段代码使用了欧几里得算法来求解最大公约数,不断将较大的数不断减去较小数的余数,直到余数为0时,较小数即为最大公约数。
设计c语言代码:设计一个子函数,找出任意2个整数的最大公约数,并在主函数中调用此函数
以下是设计的代码:
```c
#include <stdio.h>
int gcd(int a, int b) { // 定义一个求最大公约数的函数
int temp;
while (b != 0) {
temp = a % b;
a = b;
b = temp;
}
return a;
}
int main() {
int num1, num2, result;
printf("请输入两个整数:\n");
scanf("%d%d", &num1, &num2);
result = gcd(num1, num2); // 调用求最大公约数的函数
printf("%d和%d的最大公约数为%d\n", num1, num2, result);
return 0;
}
```
以上代码中,我们先定义了一个求最大公约数的函数`gcd`,在主函数中调用这个函数,输入任意两个整数即可输出它们的最大公约数。