写两个函数,分别求两个整数的最大公约数和最小公倍数,用主函数调用这两个函数,并输出结果。#include <stdio.h>
int Max(int x, int y);
int Min(int x, int y);
void main()
{
int a, b;
printf("%请输入两个数:");
scanf("%d%d", &a, &b);
printf(“Max=%d, Min=%d\n”, Max(a, b), Min(a, b));
}
int Max(int x, int y)
{
int t, r;
if (x < y)
{
t = y;
y = x;
x = t;
}
r = x % y;
while (r != 0)
{
x = y;
y = r;
r = x%y;
}
return y;
}
int Min(int x, int y)
{
int n;
n = (x * y) / Max( x, y);
return n;
}
错误在把最大公约数的输出值搞错了,不应该输出最后的r,因为r最后会变成0,而是应该输出r被整除前上一轮的r值即下一轮被赋给的y
写两个函数,分别求两个整数的最大公约数和最小公倍数,用主函数调用这两个函数,并输出结果。
最新推荐文章于 2023-12-24 11:07:50 发布