若int类型数据占2个字节,则下列语句的输出结果为【 】。 int k=-1;

若int类型数据占2个字节,则下列语句的输出结果为【 】。
int k=-1;若int类型数据占2个字节,则下列语句的输出结果为【 】。
int k=-1;
printf(“%d,%o”,k,k);
A) –1,–1 B) –1,32767
C) –1,177777 D) –1,65535
希望有具体的计算过程

int 以目前的电脑来看极有可能是 4个字节哦,如果确实需要两个字节建议用short。

在一般的电脑中,int占用4字节,32比特,数据范围为-2147483648~2147483647[-2^31~2^31-1]

在之前的微型机中,int占用2字节,16比特,数据范围为-32768~32767[-2^15~2^15-1]

使用printf输出int占用字节数量:

1printf("%d",sizeof(int));

除了int类型之外,还有short、long、long long类型可以表示整数。

unsigned int 表示无符号整数,数据范围为[0~2^32-1]。

扩展资料:

使用技巧:

标准函数INT(X)其基本功能是得到一个不大于X的最大整数,如INT(3.59)=3,INT(-2.01)=-3。INT函数是一个用途很广的函数,在教学中能有目的的分列其使用技巧。

备注:

如果 number 包含 Null,则返回 Null。Int 和 Fix 都会删除 number 的小数部分而返回剩下的整数。

Int 和 Fix 的不同之处在于,如果 number 为负数,则 Int 返回小于或等于 number 的第一个负整数,而 Fix 则会返回大于或等于 number 的第一个负整数。例如,Int 将 -8.4 转换成 -9,而 Fix 将 -8.4 转换成 -8。

参考资料来源:百度百科-INT (数据类型)

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-03-21
首先 int 以目前的电脑来看极有可能是 4个字节哦,如果确实需要两个字节建议用short。
其次 你要知道原码,反码,补码。(简单起见,假设是2个字节的int)
1 原码 0000 0000 0000 0001
-1反码 1111 1111 1111 1110
-1补码 1111 1111 1111 1111 (0177777)
选 C本回答被网友采纳
第2个回答  2016-07-05
k=-1 在内存中的补码表示为1111111111111111(16个1)
作为十进制%d输出时,结果为-1
作为无符号八进制用%o输出时,16个1二进制数转换为八进制数为177777
答案为C本回答被提问者和网友采纳
相似回答