您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關(guān)深入淺析C語言中的整除和取余運算,小編覺得挺實用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
當(dāng)對兩個整數(shù)操作數(shù)應(yīng)用“除法”運算符時,會出現(xiàn)有趣的情況。如果書寫一個如下所示的表達(dá)式:
9 / 4
按照C語言的規(guī)則,該運算產(chǎn)生的結(jié)果必然為整數(shù),因為它的兩個操作數(shù)都是int類型。C語言在計算這個表達(dá)式時,用4除9,丟棄余數(shù)。因此,結(jié)果就是2,而不是2.25。
如果要得到9除以4在數(shù)學(xué)計算中的正確值,至少要求有一個操作數(shù)為浮點類型數(shù)值。例如,以下三個表達(dá)式:
9.0 / 4
9 / 4.0
9.0 / 4.0
的結(jié)果都是2.25。只有當(dāng)兩個操作數(shù)均為int類型時,小數(shù)部分才被丟棄。丟棄小數(shù)部分的操作稱為截取。
C語言中還有一個以百分號“%”表示的算術(shù)運算符,用于求余。%運算符返回的是第一個操作數(shù)除以第二個操作數(shù)的余數(shù),它用在兩個操作數(shù)都是整數(shù)類型的情況下。例如:
9 %4
的值為1,因為9除以4商是2,余數(shù)是1。下邊是%運算符的其他一些示例:
0 %4 = 0 19 %4 = 3
1 %4 = 1 20 %4 = 0
4 %4 = 0 2001 %4 = 1
“/”和“%”在編程應(yīng)用中有廣泛的作用。例如,%運算符用于測試一個數(shù)能否被另一個數(shù)整除。例如,為了測試整數(shù)n能否被3整除,可以檢查表達(dá)式n%3的值是否為0。
但是,當(dāng)“/”和“%”的操作數(shù)中有一個為負(fù)數(shù)或者兩個都是負(fù)數(shù)時,使用它們必須十分小心,結(jié)果會因機器而異。在大部分機器中,截取將是朝著0的方向進(jìn)行的,但是在ANSI標(biāo)準(zhǔn)中并沒有進(jìn)行規(guī)定。通常,編程經(jīng)驗告訴我們,對負(fù)值避免使用這兩個運算符。
以上就是深入淺析C語言中的整除和取余運算,小編相信有部分知識點可能是我們?nèi)粘9ぷ鲿姷交蛴玫降?。希望你能通過這篇文章學(xué)到更多知識。更多詳情敬請關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。