关于进制转换
请问图中的数字加减为什么从10进制突然变成了2进制?在程序中默认的数字是10进制吗? 本帖最后由 歌者文明清理员 于 2023-6-3 22:48 编辑关于为什么数字加减从10进制变成2进制,这是因为在计算机中,所有的数字都是以二进制进行存储和运算的。所以在程序中默认的数字表示方式就是二进制。当我们使用10进制的数字时,计算机会将其转换成对应的二进制表示。
至于代码中变量a为何打印出来是144的问题,可以解释如下:
首先,变量b、c都是unsigned char类型,占用1个字节(8位),它们被初始化为0。
在第7行中,b-c-200的结果不会被赋值给任何变量,所以这一行代码并没有什么实际作用。
在第8行中,a-b+c的结果会被赋值给变量a。根据C语言运算符优先级规则,减法运算会先于加法运算进行。所以这里的a-(b+c)。而变量b、c的初始值都是0,所以b+c的结果也是0。因此这个表达式等价于a-0,即a本身的值不变。
最后,在第10行中,printf函数输出了变量a的值,由于a的初始值为0,所以输出结果为0。
综上所述,代码中变量a的初始值为0,输出结果也为0。
页:
[1]