### **C++ `cin` 输入 课后习题 - 答案** #### **一、 填空题** 1. Console Input (或 控制台输入) 2. `>>` , 提取运算符 3. 输入 , 处理 4. 暂停 (或 阻塞) 5. 空格 , 回车 6. 定义 7. 放进 #### **二、 单项选择题** 1. **D**. `cin` 的核心就是获取键盘输入。 2. **C**. `cin` 使用提取运算符 `>>`,方向是从 `cin` 流向变量。 3. **C**. 链式输入使用 `>>` 连接多个变量。 4. **C**. `cin` 默认使用空白字符(空格、回车等)作为分隔符,逗号不是空白字符,无法正确分割。 5. **B**. `cin` 使得程序可以处理运行时才给定的数据,变得通用和灵活。 6. **B**. 程序先定义变量,然后通过 `cin` 获取值,再进行计算和输出,是完整的“输入-处理-输出”流程。 7. **C**. 两种写法在功能上完全相同,都能读取两个变量,但链式写法更为常用和简洁。 8. **B**. 程序能运行但结果不对,说明语法正确(不是CE),但计算或处理的思路(逻辑)错了。 9. **B**. `cin >> a;` 只会读取一个整数。它读到 `5`,遇到空格,就认为第一个数的输入结束了,所以 `a` 的值是 `5`。`6` 会留在输入缓冲区中等待下一次 `cin` 读取。 10. **C**. `int a, b;` 定义变量,`cin >> a >> b;` 使程序暂停,等待输入。 #### **三、 判断题** 1. × ( `c` 代表 "Console" (控制台)。) 2. √ (必须先准备好“抽屉”,才能往里面放东西。) 3. √ (`cin` 是输入,`cout` 是输出,方向和作用都相反。) 4. √ (`cin` 在读取数据前会跳过所有空白字符。) 5. × (回车也是一种空白分隔符,所以可以一个数字一行,分两行输入。) 6. √ (这是讲义中强调的程序设计基本结构。) 7. √ (这正是引入 `cin` 的核心价值。) 8. × (讲义中的6步法强调,应该先整理思路,再翻译成代码。) 9. √ (提取运算符 `>>` 的作用就是将读取到的值赋给变量。) 10. × ( `cout` 应该使用插入运算符 `<<`,正确的写法是 `cout << "请输入一个数字";`。)