1.整数带余除法定理:
a = b*q + r
当除数b>0或者整除时,商q为[a/b],当除数b<0且没有整除时,商为[a/b]+1。保证0<=r<|b|.其中[n]表示不大于n的最大整数。
例子:
7/3 = 2 ······1
7/-3 = -2 ······1
-7/3 = -3 ······2
-7/-3 = 3 ······2
2.计算机除法:
同样满足a = b*q + r,但是r可以为负数。商向0取整,可以保证被除数和余数的符号一致。
例子:
#include<stdio.h>
int main(){
int a,b,c,d;
int a1,b1,c1,d1;
a = 7/3;
a1 = 7%3;
b = 7/-3;
b1 = 7%-3;
c = -7/3;
c1 = -7%3;
d = -7/-3;
d1 = -7%-3;
printf("%d %d\n", a, a1);
printf("%d %d\n", b, b1);
printf("%d %d\n", c, c1);
printf("%d %d\n", d, d1);
return 0;
}
输出为:
2 1
-2 1
-2 -1
2 -1
Process returned 0 (0x0) execution time : 1.652 s
Press any key to continue.