应该是printf("%d,%u\n",k,k),操作方法如下:
1、首先在C语言编程软件中,直接输出想要打印在屏幕上的文字。
2、点击运行,如下图所示。
3、然后输出整数,以固定长度输出整数,其中的%d代表后面的变量,d表示整数,d前面的整数代表该整数输出时会占用多大的空间,一般用于对齐输出。
4、接着输出小数,保留小数点后固定的位数,小数有两种表示方法,一种是float单精度,一种是double双精度。
5、然后输出字符串(较为常用),这里的s就是代表后面的字符串,而后面的变量可以使用字符串的指针或者字符串数组的数组名,结果都是一样的。
6、运行如下图所示,就完成了。
应该是
printf("%d,%u\n",k,k);
选D
k你应该赋值了-1,以%d格式自然输出是-1;
关键是%u以无符号整型数据输出,-1在内存中是以补码的形式存放的,占两个字节,-1的补码为11.。。。11(16个1)以无符号形式输出自然就是65535了
u%是无符号数,即只有正的。-1的原码取为反码是65535。2个字节是16位,取值范围是0到65535。
D
16位二进制格式为 11111111 11111111
按有符号数解释(%d),为负1
按无符号数解释(%u),为65535
看不到输出语句。