1:关于除法,不管是正数还是负数都是向0取整的:10/4 = 2,10/(-4) = -2
2:负数取余,通过取模来判定
|小| % |大| = |小| 符号同前 |大| % |小| = |余| 符号同前
3%4 = 3 ; -3%4 = -3 ; -3%-4 = -3 ; 3%-4 = 3;
5%3 = 2 ; 5%-3 = 2 ;-5%-3 = -2 ; -5%3 = -2;
3:浮点数转化为int整形时,小数部分会被省略,注意不是四舍五入~~
#include <iostream>
using namespace std;
int main(int argc,char** argv)
{
int a = 8.5;
cout<<a<<endl;//输出8
cin.get();
return 0;
}
4:严谨的情况下,不同的编译器在负数的除法运算下是存在不同情况的;但是在GCC编译器下,余数和被除数的符号一致
(防止有小白~“14➗2”读作“十四除以二”,除号前面的是“被除数”,除号后面的是“除数”)
记住这一点即可解决C/C++的大部分情况。取余运算时首先全取绝对值进行计算,再进行符号的判断