CppStudio logo CppStudio
首页 / 教程 / 第8课

C++ 程序可视化教程 · 第8课 · 第二章 变量

C++ 的 int 整型:7 除以 2 为什么等于 3?

int 是装整数的类型,范围约 ±21 亿。两个 int 相除是整数除法:7 / 2 得 3, 小数部分直接舍去。配套运算符 % 取余数:10 % 3 得 1。要小数结果,改用 double。

整数的存储

int 是最常用的整数类型,日常计数、分数、年龄都用它。它能装的数有上限:常见环境下约 ±21 亿。超出范围会溢出——结果不是报错,而是一个错误的值。溢出的实况演示见第 12 课,本课先建立"int 有边界"的直觉。

整数除法:本课重点

cout << 7 / 2 << endl;     // 输出 3,不是 3.5
cout << 7.0 / 2 << endl;   // 输出 3.5

规则:两个整数相除,结果还是整数,小数部分直接舍去(注意是舍去,不是四舍五入,所以 7 / 2 得 3 而不是 4)。只要参与运算的至少一边是小数,结果就是小数。

取余运算 % 与整数除法配套:a / b 是商,a % b 是余数:

int a = 10, b = 3;
cout << a / b << endl;   // 3
cout << a % b << endl;   // 1

判断一个数是奇是偶(n % 2)、能否整除,都是 % 的典型用途。

可视化观察

在 CppStudio 中打开本课示例,点击播放:

  1. 第一条 cout 输出 3——可以暂停确认:不是 3.5;
  2. 第二条 cout 输出 3.5——与第一条逐字对照,差别只在 7.0
  3. 变量 a、b 定义后出现在监视区,执行除法和取余时对照监视区心算一遍,再与输出核对。

常见错误

下一课:浮点数 double——小数怎么存,以及 0.1 + 0.2 为什么不是 0.3。

▶ 运行本课示例 弹窗里直接跑,流程图同步展开;也可新窗口打开

常见问题

C++ 中 7/2 的结果是什么?

3。两个 int 相除执行整数除法,直接舍去小数部分(不是四舍五入)。要得到 3.5,至少一边写成小数:7.0 / 2。

int 最大能装多大的数?

常见环境下约 ±21 亿(-2147483648 到 2147483647)。超过范围会溢出,得到错误结果。更大的整数用 long long,见第 12 课。

'%' 是什么运算?

取余。10 % 3 得 1,即 10 除以 3 的余数。判断奇偶、整除、按位循环都靠它,是入门阶段使用频率很高的运算符。

陕ICP备2026020640号-1