32 lines
1.7 KiB
Markdown
32 lines
1.7 KiB
Markdown
### **C++ 转义字符与字符类型 课后习题 - 答案**
|
||
|
||
#### **一、 填空题**
|
||
|
||
1. `char`
|
||
2. 单引号
|
||
3. `100`
|
||
4. `\\`
|
||
5. `\"Hi\"`
|
||
6. `':'`
|
||
|
||
#### **二、 单项选择题**
|
||
|
||
1. **C**. `char` 类型的字面量必须用单引号包裹,且只能是单个字符。
|
||
2. **C**. `\n` 是换行符,会让 `Tom` 显示在下一行。
|
||
3. **B**. 反斜杠 `\` 本身是转义字符,要输出它自身,需要写成 `\\`。
|
||
4. **A**. `cin` 会依次读取一个整数存入 `a`,一个字符存入 `op`,一个整数存入 `b`。输入 `5+3` 时,`op` 会接收到字符 `'+'`。
|
||
5. **B**. `\"` 是双引号的转义序列,用于在字符串内部表示一个双引号字符。
|
||
6. **D**. `char` 变量只能存放单个字符,`'Go'` 包含两个字符,是错误的。
|
||
7. **A**. 程序读取一个整数 `h`,然后需要读取一个字符,最后读取一个整数 `m`。
|
||
8. **C**. `\\` 是 `\` 的转义序列,所以 `\\` 会让 `\` 失去转义功能,变回它本身。因此 `\\n` 会输出 `\n` 这两个字符。
|
||
|
||
#### **三、 判断题**
|
||
|
||
1. × (必须用单引号 `' '`。)
|
||
2. √ (两者最终在屏幕上看到的换行效果是一样的。)
|
||
3. √ (`cin` 默认通过空白字符(空格、回车等)分隔数据,读到 'A' 后遇到空格,就完成了对 `c` 的读取。)
|
||
4. √ (这正是转义字符的定义。)
|
||
5. × ( `char` 只能存放单个字符。)
|
||
6. √ (`cin` 会先读取数字部分 `99` 存入 `a`,然后接着读取非数字字符 `'A'` 存入 `c`。)
|
||
7. √ ( `"` 是特殊字符,在字符串中必须通过 `\"` 来表示。)
|
||
8. √ (如 `cin >> a >> op >> b;` 所示,`cin` 可以很灵活地连续读取不同类型的数据。) |