Description
键盘输入一个单精度实数,用八进制输出其在内存中的存储状态。
例如:键盘输入12.36,12.36在内存中存储为4个字节,是如下的状态:01000001 01000101 11000010 10001111(这个存储状态是根据浮点数的存储标准----IEEE754标准计算出来的)
分组(自右至左每三位一组): 01 000 001 010 001 011 100 001 010 001 111
所以八进制的输出结果是:10121341217
提示:利用共用体,让实数与某种数据共享4个字节的内存,而那种数据是可以用八进制输出的
Input
输入一个单精度实数
Output
用八进制输出其在内存中的存储状态
Sample Input
12.36
Sample Output
10121341217
#include<stdio.h>
union U
{
float a;
int b;
};
int main()
{
union U u;
scanf("%f",&u.a);
printf("%o",u.b);
}
Description
键盘输入一个short型整数,问:若把它当作是两个字符,则这两个字符各是什么?
Input
输入一个短整数
Output
输出两个字符,先输出低位字节的,再输出高位字节的
Sample Input
16706
Sample Output
B,A
#include<stdio.h>
#include<stdlib.h>
union U
{
short a;
char b[2];
};
int main()
{
union U u;
scanf("%d",&u.a);
printf("%c,%c",u.b[0],u.b[1]);
return 0;
}