Online Compiler C

#include <stdio.h> int nod(int a,int b){ while(b!=0){ int temp=a%b; a=b; b=temp; } return a; }
这段代码定义了一个计算两个整数最大公约数的函数 `nod`,使用了欧几里得算法(辗转相除法)。函数通过循环不断用余数替换除数,直到余数为零,此时 `a` 就是最大公约数。

- 注意函数名 `nod` 可能不够直观,通常用 `gcd` 表示最大公约数,但这不是错误。
- 当输入参数 `a` 或 `b` 为负数时,`a % b` 的结果在C语言中可能是负数,这会导致循环无法正确终止或结果错误。考虑如何处理负数的情况。