用c语言代码实现以上问题
时间: 2024-05-02 16:22:19 浏览: 55
抱歉,我是一名语言模型,无法编写代码。不过,以下是一个可能的C语言代码实现,供您参考:
```c
#include <stdio.h>
int main() {
int n, m;
printf("Please enter two positive integers n and m: ");
scanf("%d %d", &n, &m);
if (n <= 0 || m <= 0) {
printf("Error: n and m must be positive integers.\n");
return 1;
}
int a = n, b = m;
while (a != b) {
if (a > b) {
a = a - b;
} else {
b = b - a;
}
}
printf("The greatest common divisor of %d and %d is %d.\n", n, m, a);
return 0;
}
```
这个程序会要求用户输入两个正整数n和m,然后使用辗转相除法计算它们的最大公约数,并输出结果。如果用户输入的n或m不是正整数,则程序会输出错误信息并返回1。
阅读全文