C语言——整型和浮点型混合运算_int与float的混合计算__好好学习的博客-CSDN博客
请写出165.25(10进制)使用float型存储在计算机中的形式。
在计算机中,浮点数使用IEEE 754标准来表示。根据IEEE 754标准,32位的单精度浮点数(float类型)按照以下格式存储:
最高位是符号位(S):0表示正数,1表示负数。 接下来的8位是指数位(E)。 剩下的23位是尾数位(M)。
现在我们将165.25转换为float型存储形式:
首先,将165.25转换为二进制表示形式。整数部分的转换是简单的,可以直接转换为二进制数字:165转换为二进制是10100101。
对于小数部分,我们需要进行乘2取整的操作。具体步骤如下: 0.25 * 2 = 0.5 整数部分为0 0.5 * 2 = 1.0 整数部分为1
将乘法过程得到的整数按顺序排列,得到0.01。
将整数部分和小数部分的二进制放在一起,得到:10100101.01
#include "stdio.h"
int main()
{
float x=1.57,y;
int a,b,c;
a=x;
b=(int)x; //强制类型转换,丢弃小数
c=2+x; //自动类型转换,丢弃小数
y=2+x;
printf("%.0f %d %d\n",x,a,b); //会输出 2 1 1 “.0f”格式会自动四舍五入
printf("%.2f %d\n",y,c); //会输出 3.57 3
}