负数的余数也是向零求余:
int a=-19, b=4;
a/b==-4;
a%b=-3;
一般情形下,假设被除数是 a,除数是 b,余数是r。
有两种方法:
1. 先令 r = a % b,然后如果 r < 0 再进行修正:
r = a % b;
if (r < 0) r += b;
2. 直接使用语句:
r = (a%b+b)%b;
这样就保证了 r >= 0,缺点是要执行两次取余运算,效率会打点折扣。
一种巧妙的整数转换为字符串的方法:
负数的余数也是向零求余:
int a=-19, b=4;
a/b==-4;
a%b=-3;
一般情形下,假设被除数是 a,除数是 b,余数是r。
有两种方法:
1. 先令 r = a % b,然后如果 r < 0 再进行修正:
r = a % b;
if (r < 0) r += b;
2. 直接使用语句:
r = (a%b+b)%b;
这样就保证了 r >= 0,缺点是要执行两次取余运算,效率会打点折扣。
一种巧妙的整数转换为字符串的方法: