要求:1.键盘输入任意2个整数,编写两个函数,分别求其最大公约数和最小公倍数。
2.计算最小公倍数的函数要调用求最大公约数的函数。
3.建立一个二维数组,编一个指针为参数的函数,将数1、数2、最大公约数和最小公倍数存在该数组一行中,5次循环(5次输入两个整数),将二维数组结果显示在屏幕上。
(能力强的同学可以用动态管理内存的函数建立动态数组,不限定行数为5)
#include <stdio.h>
int main() {
int hcf(int x, int y);
int lcd(int x, int y);
int a, b, c, d;
printf("请输入两个数:");
scanf("%d%d", &a, &b);
c = hcf(a, b);
d = lcd(a, b);
printf("最大公约数:%d\n最小公倍数:%d\n", c, d);
return 0;
}
int hcf(int x, int y) {
int i, z;
if (x < y) {
i = x;
x = y;
y = i;
}
z = x % y;
while (z) {
x = y;
y = z;
z = x % y;
}
return (y);
}
int lcd(int x, int y) {
int m=x*y;
y=hcf(x,y);
int n = / y;
return (n);
}