鍵盤輸入一個單精度實數,用八進制輸出其在內存中的存儲狀態。spa
例如:鍵盤輸入12.36,12.36在內存中存儲爲4個字節,是以下的狀態:01000001 01000101 11000010 10001111(這個存儲狀態是根據浮點數的存儲標準----IEEE754標準計算出來的)ip
分組(自右至左每三位一組): 01 000 001 010 001 011 100 001 010 001 111內存
因此八進制的輸出結果是:10121341217io
提示:利用共用體,讓實數與某種數據共享4個字節的內存,而那種數據是能夠用八進制輸出的class
輸入一個單精度實數float
用八進制輸出其在內存中的存儲狀態nio
#include<stdio.h>
union U
{
float a;
int b;
};
int main()
{
union U u;
scanf("%f",&u.a);
printf("%o",u.b);
}數據
鍵盤輸入一個short型整數,問:若把它看成是兩個字符,則這兩個字符各是什麼?di
輸入一個短整數鍵盤
輸出兩個字符,先輸出低位字節的,再輸出高位字節的
#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;
}