C语言中的求模运算,通常使用取余操作符%。然而,当涉及到负数时,结果可能会让人感到困惑。在大多数C编译器中,求模运算遵循数学中的除法原则,即a % b = a - (a/b)*b。这意味着,当a为负数时,结果也可能为负。例如,考虑以下代码片段:include <stdio.h> include <stdlib.h> int main(...
首先你的理解就是错误的C或者C++里面对于负数取模是有规则的规则一: 余数和除数同号规则二: |余数| < |被除数|基于这两个规则, (-19) % 26 应该商0余-19
2%5=2,-3%8=-3,余数和被除数符号相同(你把除数和被除数说反了),这是C语言规定的,就不要问为啥了,反正你这样输入,它就给你这样的结果