4.下述语句的输出为( ).Int x=-1; Printf(“%d,%u,
来源:学生作业帮 编辑:搜搜做题作业网作业帮 分类:综合作业 时间:2024/04/30 04:06:47
4.下述语句的输出为( ).Int x=-1; Printf(“%d,%u,
4.下述语句的输出为( ).
Int x=-1;
Printf(“%d,%u,%o”,x,x,x);
A.-1,-1,-1 B.-1,32767,-177777
C.-1,32768,177777 D.-1,65535,177777
4.下述语句的输出为( ).
Int x=-1;
Printf(“%d,%u,%o”,x,x,x);
A.-1,-1,-1 B.-1,32767,-177777
C.-1,32768,177777 D.-1,65535,177777
D
这题是建立在int是16位整型的基础上的.
%d表示输出为整型数,所以就是原来的-1;
%u表示输出为无符号整型数,由于-1的补码是十六进制的FFFF,也就是十进制65535;
%o表示输出为8进制数,转换一下就是177777.
再问: -1的补码是多少,如何求的,它又怎么变为十六进制的,还有-1如何转换八进制的 谢谢!
再答: 计算机中都是用补码来表示负数的。 对于16位的整型数据,-1的补码是用对应的正数(也就是1)按位取反(得2进制的1111111111111110)后再+1,就是2进制的1111111111111111。为了方便所以用16进制表示为FFFF,也就是65535。 65535的8进制表示就是177777。
再问: 嗯,谢谢了
这题是建立在int是16位整型的基础上的.
%d表示输出为整型数,所以就是原来的-1;
%u表示输出为无符号整型数,由于-1的补码是十六进制的FFFF,也就是十进制65535;
%o表示输出为8进制数,转换一下就是177777.
再问: -1的补码是多少,如何求的,它又怎么变为十六进制的,还有-1如何转换八进制的 谢谢!
再答: 计算机中都是用补码来表示负数的。 对于16位的整型数据,-1的补码是用对应的正数(也就是1)按位取反(得2进制的1111111111111110)后再+1,就是2进制的1111111111111111。为了方便所以用16进制表示为FFFF,也就是65535。 65535的8进制表示就是177777。
再问: 嗯,谢谢了
4.下述语句的输出为( ).Int x=-1; Printf(“%d,%u,
若int类型数据占两个字节,则下列语句的输出为() Int k=-1; printf("%d,%u",k,k);
下述程序段的输出结果是 int x=10; int y=x++; printf(“%d,%d”,(x++,y),y++)
设int x=9,y=9,则printf("%d,%d\n",x--,--y);语句的输出结果是
执行以下语句后的输出结果 int x=3,y=0; printf("%d,%d",-1>x>-10&&1-10&&1
设x、y均为int类型变量,且x=10,y=3,则以下语句 printf(“%d,%d\n”,x--,--y);的输出结
设有如下定义:int x=10,y=3,z;则语句printf("%d\n",z=(x%y,x/y));的输出结果是多少
如下定义:int x=10,y=3,z;则语句 printf("%d\n",z=(x%y,x/y)); 的输出结果是
若int 类型占两个字节,则下列程序段的输出是()int =-1;printf("%d,%u",a a);
若int 类型占两个字节,则下列程序段的输出是()int =-1;printf("%d,%u\n",a a);
以下程序输出的结果是 main() {int x; x=-3+4%6/5; printf(%d,x); }
若已定义 int a=11; 执行以下语句后的输出结果是( ).printf("a=%d,a=%o,a=%x\n",a,