B20
加减乘除与取余:整数商
引入
章前总览 第4章学习算术运算。C++ 里乘除写作 * / /;两个整数相除得到整数商(不留小数),余数用 %。买书、星期几、时间换算,都会反复用到。
逻辑链条:
- C1:七种算术运算符一览
- C2:整数除法 / 与取余 %
- C3:苹果分给同学的生活例子
1 C1. 七种算术运算符
常用七种:+ - * / % ++ --。
速记表
+ 加
- 减
* 乘(不能写 ×)
/ 除(整数相除→整数商)
% 取余(只适用于整数)
++ 自增 1
-- 自减 1
- 优先级大体遵循“先乘除(及取余),后加减”;有括号先算括号。
^在 C++ 里是按位异或,不是乘方。
2 C2. 整数商与余数
正整数 a 除以 b:商 a/b 表示“有几个 b”;余数 a%b 是去掉整数倍后的零头,取值在 0 … b-1。
例子
17/3 = 5(整数商),17%3 = 2(余数)。- 17 个苹果分给 3 人:每人 5 个,还剩 2 个。
%两边都必须是整数;不能写c % 2.5。
补充说明
不推荐
cout << 17 / 3; // 期望 5.666?
// 实际输出 5
问题:两个 int 相除不会自动变成小数。
推荐写法
cout << 17 / 3 << endl; // 5
cout << 17 % 3 << endl; // 2
优点:买书本数、剩余零钱就靠这一对。
小结
记住一对公式:
a = (a/b)*b + (a%b) // 对非负整数成立
商 = a/b,余数 = a%b
✓
里程碑达成:
下一节学习 ++/-- 与复合赋值 +=、%=,再进入真题案例。