单选题
1、第213题 (1.0分) 题号:600 若有说明语句:char c='\72';则变量c()。
A
包含1个字符
B
包含2个字符
C
包含3个字符
D
说明不合法,c的值不确定
答案解析
正确答案:A
解析:
**解析:**
在 C 语言中,字符常量可以使用转义字符来表示。转义字符以反斜杠 `\` 开头,后跟特定的字符或数字序列。
题目中的语句 `char c = '\72';` 使用了**八进制转义字符**。其规则如下:
1. **格式识别**:`\` 后面跟随 1 到 3 位八进制数字(0-7),表示该八进制数对应的 ASCII 码字符。
2. **具体计算**:`\72` 是一个合法的八进制转义序列。
* `7` 和 `2` 都是合法的八进制数字。
* 八进制数 $72$ 转换为十进制为:$7 \times 8^1 + 2 \times 8^0 = 56 + 2 = 58$。
* ASCII 码值为 58 的字符是冒号 `:`。
3. **存储特性**:尽管在源代码中写成了 `\72` 这四个字符(`\`, `7`, `2`, `'` 等),但在编译处理后,它代表的是**单个**字符(即 ASCII 码为 58 的那个字符)。变量 `c` 是 `char` 类型,只能存储一个字节的数据,因此它只包含 **1 个字符**。
**选项分析:**
* **A. 包含1个字符**:正确。`\72` 整体被视为一个转义字符,占用一个字节。
* **B. 包含2个字符**:错误。
* **C. 包含3个字符**:错误。虽然看起来有 `\`、`7`、`2` 三个部分,但它们共同组成一个转义序列。
* **D. 说明不合法**:错误。`\72` 是合法的八进制转义表示法。
故正确答案为 **A**。
题目纠错
c语言选择判断题库
相关题目
单选题
1、第46题 (1.0分) 题号:630 逻辑运算符两侧运算对象的数据类型()。
单选题
1、第45题 (1.0分) 题号:531 C语言中,定义结构体的保留字是()。
单选题
1、第44题 (1.0分) 题号:496 double x;scanf( );不可以赋值给x变量的常量是()。
单选题
1、第43题 (1.0分) 题号:669 若用数组名作为函数的实参,传递给形参的是()。
单选题
1、第42题 (1.0分) 题号:518 char a[]=“This is a program.”;输出前5个字符的语句是()。
单选题
1、第41题 (1.0分) 题号:500 下列程序段的输出结果为()。 int x=3,y=2; printf(”%d”,(x-=y,x*=y+8/5));
单选题
1、第40题 (1.0分) 题号:632 以下叙述正确的是()。
单选题
1、第39题 (1.0分) 题号:94 在C语言中,能代表逻辑值”真”的是()。
单选题
1、第38题 (1.0分) 题号:151 以下程序的运行结果是()。
单选题
1、第37题 (1.0分) 题号:693 以下各选项企图说明一种新的类型名,其中正确的是()。
