本关任务:写两个西数,分别求两个整数的最大公约数和最小公倍数,用主函数调用这两个两数,并输出结果。两个整数由键盘输 人,如果输入的数中包含负数, 則輸出Input Error。
时间: 2023-11-27 13:26:50 浏览: 28
好的,下面是使用 C 语言编写的程序,可以求解两个整数的最大公约数和最小公倍数,并且能够处理输入错误的情况。
```c
#include <stdio.h>
// 求最大公约数
int gcd(int a, int b) {
int temp;
while (b != 0) {
temp = b;
b = a % b;
a = temp;
}
return a;
}
// 求最小公倍数
int lcm(int a, int b) {
return a * b / gcd(a, b);
}
int main() {
int num1, num2;
printf("请输入两个整数:\n");
scanf("%d %d", &num1, &num2);
if (num1 <= 0 || num2 <= 0) {
printf("Input Error\n");
} else {
printf("%d和%d的最大公约数是%d\n", num1, num2, gcd(num1, num2));
printf("%d和%d的最小公倍数是%d\n", num1, num2, lcm(num1, num2));
}
return 0;
}
```
使用方法:
1. 编译运行上面的代码,可以得到一个可执行文件;
2. 在命令行中运行该可执行文件;
3. 按照程序提示输入两个整数;
4. 如果输入的两个整数中有一个或者两个是负数,则程序会输出"Input Error";
5. 如果输入的两个整数都是正数,则程序会输出这两个数的最大公约数和最小公倍数。