C语言求最大公约数(GCD)代码解析及错误修正
你的代码基本上是正确的,只有一个小问题。在'main'函数中,你已经声明了一个名为'result'的整数变量,然后在调用'gcd'函数时又声明了另一个名为'result'的整数变量。这是不允许的,你只需要使用一个'result'变量即可。
以下是修复了这个问题的代码:
#include <stdio.h>
int gcd(int a, int b)
{
int remainder;
while (b != 0) {
remainder = a % b;
a = b;
b = remainder;
}
return a;
}
int main()
{
int num1, num2, result;
printf("请输入两个整数:");
scanf("%d %d", &num1, &num2);
result = gcd(num1, num2);
printf("GCD=%d\n", result);
return 0;
}
现在,当你输入两个整数后,程序将会计算它们的最大公约数并输出结果。
希望这对你有帮助!如果你还有其他问题,请随时提问。
原文地址: https://www.cveoy.top/t/topic/di0O 著作权归作者所有。请勿转载和采集!