c与c++笔试题
1.小数值1.5625的二进制表示是? 1.1001
2.在二进制数据中,小数点向右移一位,则数据: 乘以2
解析:(1)二进制转换为十进制:1101.0101=2^3+2^2+2^0+2^-2+2^-4=13.3125;
(2)十进制小数转化为二进制:0.3125*2=0.625, 小数点后第一位为0;0.625*2=1.3,小数点后第二位为1;0.3*2=0.7,小数点后第三位为0;0.7*2=1.4,小数点后第四位为1;
3.求每个变量的字节数
struct
T {
char
a; //1B
int
*d; //64位操作系统,d指针所占字节为8B;32位为4B
int
b; //4B
int
c:16; //2B
double
e; //8B float为4B
};
T *p; //8B