单选题
1、第8题 (1.0分) 题号:108 设C语言中,int类型数据占2个字节,则short类型数据占()。
A
1个字节
B
2个字节
C
4个字节
D
8个字节
答案解析
正确答案:B
解析:
**解析:**
在 C 语言标准中,基本数据类型的大小并不是绝对固定的,而是依赖于具体的编译器实现和目标平台(如 16位、32位或 64位系统)。但是,标准对类型之间的大小关系有明确的约束:
1. **标准规定**:`short int`(简称 `short`)的长度通常小于或等于 `int` 的长度,且至少为 16 位(2 个字节)。即 `sizeof(short) <= sizeof(int)`。
2. **题目条件**:题目明确设定“`int` 类型数据占 2 个字节”。
3. **推导**:
* 由于 `short` 至少需要占用 2 个字节(16位)来存储其取值范围。
* 同时 `short` 的长度不能超过 `int` 的长度。
* 既然 `int` 只有 2 个字节,那么 `short` 也只能是 2 个字节。如果 `short` 是 1 个字节,则无法满足至少 16 位的标准要求;如果 `short` 大于 2 个字节,则违反了 `short` 不大于 `int` 的常规层级关系(且在 `int` 仅为 2 字节的环境下,通常对应的是 16 位系统环境,此时 `short` 和 `int` 通常均为 2 字节)。
因此,在该特定条件下,`short` 类型数据占 **2 个字节**。
故正确答案为 **B**。
题目纠错
c语言选择判断题库
相关题目
单选题
1、第251题 (1.0分) 题号:87 C语言源程序的基本单位是()。
单选题
1、第250题 (1.0分) 题号:709若定义:int a=511,*b=&a;, 则printf(”%d\n”,*b);的输出结果为()。
单选题
1、第249题 (1.0分) 题号:172 在C语言程序中()。
单选题
1、第248题 (1.0分) 题号:682 sizeof( )是()。
单选题
1、第247题 (1.0分) 题号:182 执行下面程序后,输出结果是()。
单选题
1、第246题 (1.0分) 题号:718 系统的标准输入文件是指()。
单选题
1、第245题 (1.0分) 题号:621 printf函数中用到格式符%5s,其中数字5表示输出的字符串占用5列,如果字符串长度大于5,则输出按方式()。
单选题
1、第244题 (1.0分) 题号:205 变量p为指针变量,若p=&a,下列说法不正确的是()。
单选题
1、第243题 (1.0分) 题号:638 设有数组定义: char array [ ]=“China”; 则数组 array所占的 空间为()。
单选题
1、第242题 (1.0分) 题号:89 以下标识符中,不能作为合法的C用户定义标识符的是()。
