c語言取餘運算:
這個%並不是除號÷,它是一個取餘運算子,或者叫做模運算子。取餘的意思是,取得兩個整數相除之後的餘數。比如,5除於2的餘數是1,5除於3的餘數是2。因此使用這個%有個原則:%兩側必須都為整數。下面的寫法是錯誤的:
1 int a = 5.0 % 2;
編譯器會直接報錯,因為5.0並非整數。
1> 正數取餘
1 int a = 5 % 2;
2 int b = 2 % 5;
簡單計算可得:變數a的值為1,變數b的值為2
2> 負數取餘
1 int a = -5 % 2;
2 int b = 5 % -2;
3 int c = -5 % -2;
利用%求出來的餘數是正數還是負數,由%左邊的被除數決定,被除數是正數,餘數就是正數,反之則反。因此變數a、b、c的值分別。
除數的格式改一下,在不同的編譯環境中資料的精確度不同,比如在VC++6.0中就比在TURBO.C中精確
c語言取餘運算:
這個%並不是除號÷,它是一個取餘運算子,或者叫做模運算子。取餘的意思是,取得兩個整數相除之後的餘數。比如,5除於2的餘數是1,5除於3的餘數是2。因此使用這個%有個原則:%兩側必須都為整數。下面的寫法是錯誤的:
1 int a = 5.0 % 2;
編譯器會直接報錯,因為5.0並非整數。
1> 正數取餘
1 int a = 5 % 2;
2 int b = 2 % 5;
簡單計算可得:變數a的值為1,變數b的值為2
2> 負數取餘
1 int a = -5 % 2;
2 int b = 5 % -2;
3 int c = -5 % -2;
利用%求出來的餘數是正數還是負數,由%左邊的被除數決定,被除數是正數,餘數就是正數,反之則反。因此變數a、b、c的值分別。