C語言:正負數之間取模運算(轉載)

若是 % 兩邊的操做數都爲正數,則結果爲正數或零;若是 % 兩邊的操做數都是負數,則結果爲負數或零。C99 之前,並無規定若是操做數中有一方爲負數,模除的結果會是什麼。C99 規定,若是 % 左邊的操做數是正數,則模除的結果爲正數或零;若是 % 左邊的操做數是負數,則模除的結果爲負數或零。例如:          15 % 2       // 餘 1          15 % -2      // 餘 1          -15 % 2      // 餘 -1          -15 % -2     // 餘 -1標準規定,若是 a 和 b 都是整數,則 a % b 能夠用公式 a - (a / b) * b 算出。例如:          -15 % 2 == -15 - (-15 / 2) * 2 == -15 - (-7) * 2 == -1

相關文章
相關標籤/搜索