我正在尝试解决一个学校的问题,基本上是: 用C编写一个程序,不仅要确定两个给定数字的HCF,还要确定迭代次数。
例如,输出应为:
hcf(12,18)= hcf(12,6)= hcf(6,6)= 6 3次迭代。
到目前为止,我已经提出了这个建议:
#include <stdio.h>
int mdc(int a, int b);
int main() {
int a, b;
printf("Pick 2 numbers to determine their HCF and the number of iterations: "); scanf("%d %d", &a, &b);
return 0;
}
int mdc(int a, int b) {
int i = 0;
while (a != b) {
if(a > b) {
a = a - b;
i++;
}
else {
b = b - a;
i++;
}
}
return a;
}
我在此函数中创建了一个变量i,以具有一种计算迭代次数的方法,但是一个函数不能返回一个以上的值,所以我有点儿陷入其中。
谢谢!