文字を入力して下さい: M m 文字を入力して下さい: e E 文字を入力して下さい: i I 文字を入力して下さい: j J 文字を入力して下さい: I i
char toascii(int number) { // write your code down here. } int main(void) { for(int i=0; i<10; i++){ char c = toascii(i); printf("%c",c); } printf("¥n"); }
【ヒント:以下のプログラムの足らない部分を埋めなさい】 // 年組番号 氏名 // print_short2binary.cpp #include <stdio.h> void print_short2binary(unsigned short si) { for(int i=.... printf("%d", ....); if(!(i%4)) // 見やすくするために4桁毎にスペースを入れる printf(" "); } printf("\n"); } #if defined(TEST) int main(void) { print_short2binary(0x1234); print_short2binary(0x1248); print_short2binary(0x8421); print_short2binary(0xAAAA); print_short2binary(0x5555); } #endif
【実行例】 0001 0010 0011 0100 0001 0010 0100 1000 1000 0100 0010 0001 1010 1010 1010 1010 0101 0101 0101 0101
【ヒント:以下のコードの穴埋めをせよ】 // 年組番号 氏名 // lsb8.cpp #include "print_short2binary.h" unsigned char lsb8(unsigned short us) { .... return uc; } #if defined(TEST) #include <stdio.h> int main(void) { for(int i=0; i<8; i++){ unsigned short x = 252 + i; printf("%d : %04X : ", x, x); print_char2binary( lsb8(x) ); } } #endif
【プログラムのビルド時のヒント】
上記のコードは,"print_short2binary.cpp"の中に8bitのビットパターンを 描く関数,print_char2binary(unsigned char)をつくり,ライブラリとして利用しています. これをするには次のようにします.
- ヘッダファイル"print_short2binary.h"を作成する.
- ライブラリのコンパイルをする
bcc32 -c print_short2binary.cpp
- ビルドする(ライブラリと結合する)
bcc32 -DTEST lsb8.cpp print_short2binary.obj
【実行例】 252 : 00FC : 1111 1100 253 : 00FD : 1111 1101 254 : 00FE : 1111 1110 255 : 00FF : 1111 1111 256 : 0100 : 0000 0000 257 : 0101 : 0000 0001 258 : 0102 : 0000 0010 259 : 0103 : 0000 0011
【ヒント:以下のコードの穴埋めをして正しいプログラムとせよ】 // 年組番号 氏名 // msb8.cpp #include "print_short2binary.h" unsigned char msb8(unsigned short us) { .... return uc; } #if defined(TEST) #include <stdio.h> int main(void) { for(int i=0; i<8; i++){ unsigned short x = 0x4321 + i*0x1111; printf("%5d : %04X : ", x, x); print_char2binary( msb8(x) ); } } #endif
【実行例】 17185 : 4321 : 0100 0011 21554 : 5432 : 0101 0100 25923 : 6543 : 0110 0101 30292 : 7654 : 0111 0110 34661 : 8765 : 1000 0111 39030 : 9876 : 1001 1000 43399 : A987 : 1010 1001 47768 : BA98 : 1011 1010