代码:
#include <stdio.h> #include <stdlib.h> void display(int, int); int main(void) { // 模运算的结果取决于第一个操作数的符号 // 如果第一个操作数是正数,得到的模也是正数 // 如果第一个操作数是负数,得到的模也是负数 // a % b = a - [a / b] * b // [x]表示对数x趋零取整 // C99中,对整数除法规定趋零截尾 int a, b; a = 9; b = 5; display(a, b); a = 9; b = -5; display(a, b); a = -9; b = -5; display(a, b); a = -9; b = 5; display(a, b); return EXIT_SUCCESS; } void display(int a, int b) { printf("%+d / %+d = %+d, %+d %% %+d = %+d\n", a, b, a / b, a, b, a % b); }
输出:
+9 / +5 = +1, +9 % +5 = +4 +9 / -5 = -1, +9 % -5 = +4 -9 / -5 = +1, -9 % -5 = -4 -9 / +5 = -1, -9 % +5 = -4
时间: 2024-10-10 14:49:37