c语言之“/”和“%”运算符

c语言中做除法和取余操作有以下几点规定:

q = a / b;

r = a % b;

 

1. 最重要一点:q * b + r == a;即 商 乘以 除数 加上 余数 等于 被除数;

2. 改变被除数a 的正负号,希望商q 的符号也随之改变,但商q 的绝对值不会改变;

3. 余数和被除数的正负号相同;

 

#include <stdio.h>

int main(int argn ,char *argv[])
{
  // (-1) * (-2) + 1 = 3
  // 余数1和被除数3符号相同
  
int r = 3 / (-2); //-1 int rr = 3 % (-2); //1   
  // 1 * 2 + 1 = 3
  // 除数符号改变,商的符号也随之改变
  // 余数1 和 被除数3 符号相同
r = 3 / 2; //1 rr = 3 % 2; //1
  
  // (-1) * 2 + (-1) = -3;
  // 被除数符号改变,商r = -1也随之改变;
  // 余数-1 和 被除数-3 符号相同
r
= -3 / 2; //-1 rr = -3 % 2; //-1 return 0; }

 

posted @ 2020-05-09 08:41  唯一诺  阅读(3774)  评论(0编辑  收藏  举报