• 検索結果がありません。

Microsoft Word - 中間試験 その1_解答例.doc

N/A
N/A
Protected

Academic year: 2021

シェア "Microsoft Word - 中間試験 その1_解答例.doc"

Copied!
6
0
0

読み込み中.... (全文を見る)

全文

(1)

「情報技術Ⅱ」前半 中間試験

問題1.C 言語

次の宣言をしている時、以下の問いに答えよ

1-1.各値を求めよ。

(1)sizeof( unsigned char ) (2)sizeof( struct Kouzou ) (3)sizeof( mk )

(4)sizeof( mk[1].str ) (5)sizeof( moji_1 ) (6)sizeof( mk[0] )

(7)情報科学研究センター(26号館)の unix 上の gcc における sizeof( int )

1-2.コメントに書かれた内容の動作をするように、空欄を埋めよ。

1-3.上記のプログラムを実行したときに、画面に表示される値を示せ。

pk の code その1=

pk の code その2=

unsigned char moji_1; struct Kouzou {

unsigned char code; unsigned char str[10]; }; struct Kouzou mk[3]; (1) (2) (3) (4) (5) (6) (7)

int main( void ) {

struct Kouzou ; //構造体 Kouzou のポインタ pk を宣言

pk = malloc( );

//動的にメモリを確保し、pk に割り当てる

= 168; //pk の code に 168 を入れる

printf( "pk の code その1 = %02x\n" , (3)と同じもの ); // pk の code を表示する

printf( "pk の code その2 = %02X\n" , (3)と同じもの ); // pk の code を表示する

free( ); //pk を解放する return ( 0 ); } (1) (2) (3) (4) (1) (2) (各 2 点) (各 5 点) (各 3 点)

11

33

10

1

11

4

*pk

sizeof( struct Kouzou )

pk->code

pk

a8

A8

(2)

問題2.逆ポーランド記法

2-1.次の式を、逆ポーランド記法で記せ。

(適切な位置に演算子を書き入れよ)

(1)2+3-5×8 (2)2+(3-5)×8 (3)(2+3-5)×8 (1)

×

(2)

×

(3)

×

2-2.逆ポーランド記法で記された、次の式を解け。

(区切り記号は _ で示してある)

(1)

20_12_×_11_-_29_+

258

(2)

1_2_3_4_+_×_-

-13

(3)

10_2_3_+_÷_73_×

146

2-3.次式の元となった解析木を 2 分木で構成し、計算手順をスタックの変化で示せ。

4826++×

(2)計算手順 (1)解析木 4

4

8

4

2

8

4

6

2

8

4

8

8

4

16

4

×

64

(各 3 点) (各 3 点) (12 点) (10 点)

×

(3)

問題3.スタックとキュー

3-1.次の語句の中から、それぞれに関係の深いものをすべて選べ。

(1)stack (2)queue

3-2.次の問いに答えよ。

音楽用の CD のプレーヤーは、音とびを防止するために、標準より速い速度で CD から情報を 読み出し、再生する段階で標準の速度にしている。 (1)読み出し速度と再生速度の違いを吸収するのに適した仕組みは、次のどれか? CD の音楽情報は、サンプリング 44.1kHz 量子化 16 ビット ステレオ、すなわち、 1 秒間の音声データは、44,100×16×2 (bit) = 176,400 byte である。 4 倍速で読み出し可能な CD プレーヤーで、バッファサイズが 256kbyte のとき、 (2)外部からの衝撃などで一時的に読み出せなくなった場合、それまでに読み出されていた データがバッファに満たされていたとして、読み出し不能から回復するまで何秒以内 だったら、音飛びが発生しないですむか? 該当するものをすべて選べ。 (3)順調に読み出しができるとして、バッファが空の状態から、音楽を再生しながら バッファがいっぱいになるまで、およそ何秒かかるか? もっとも近いものを選べ。

LINK リングバッファ LIFO PUSH FILA

先入れ後出し FIFA PULL 待ち行列 FILE

FIFO LOLI ドーナツバッファ FILO 先入れ先出し

LIFO、PUSH、先入れ後出し、FILO

リングバッファ、待ち行列、FIFO、先入れ先出し

ア)stack イ)queue ウ)struct

ア)0.5 秒 イ)1 秒 ウ)1.5 秒 エ)2 秒 ア)0.25 秒 イ)0.36 秒 ウ)0.48 秒 エ)0.72 秒 オ)1 秒 (8 点) (8 点) (4 点) (10 点) (10 点)

(4)

問題4.木構造

4-1.次の中から、条件に合うものをすべて選べ。

(該当するものがなければ「なし」

(1)2 分木 (2)2 分探索木 (3)完全 2 分木 (4)木構造 (5)ヒープ木 (6)ハフマン木

4-2.次の数値を格納する、完全 2 分探索木を作成せよ。

ウ 3 1 2 5 6 7 4 8 ア 4 2 9 15 12 17 8 10 イ 5 1 8 9 13 12 エ 7 6 4 8 10 9 2 1 3 5 オ 6 8 13 10 15 12 カ 5 2 4 11 12 10 8 7 6 3 1 9 完全 2 分探索木 8

1 , 2 , 5 , 8 , 13 , 18 , 21

(各 3 点) (22 点) ア、イ、オ、カ ア、オ ア、イ、ウ、オ、カ カ イ、オ、カ なし 2 18 1 5 13 21

(5)

問題5.線形リスト

値の小さい順につないでいる、次のようなリスト構造のデータがある。

このリストに「5」のデータを挿入するとき、次の各問いに答えよ。

5-1.挿入後のリスト構造を示すように、矢印を書き込め。

また、挿入の際につなぎ替えた部分の矢印には、つなぎ替えた順番を矢印のそばに番号で示せ。

5-2.メモリの変化の様子について、空欄を埋めて、下図を完成させよ。

このときのノードの構造は、右図の通りであり、 リトルエンディアン、ポインタサイズは 16 ビット、 メモリへの格納は、0x9000 番地から隙間なく 使われるものとする。 ● 1 2 ● 8 ● 13 ● 18 ● ● 1 2 ● 8 ● 13 ● 18 ● ● 5 挿入前の状態 アドレス メモリ アドレス メモリ 0x9000 0x01 0x9010 0x12 0x9001 0x00 0x9011 0x00 0x9002 0x04 0x9012 0x20 0x9003 0x90 0x9013 0x90 0x9004 0x02 0x9014 (空き) 0x9005 0x00 0x9015 (空き) 0x9006 0x08 0x9016 (空き) 0x9007 0x90 0x9017 (空き) 0x9008 0x08 0x9018 (空き) 0x9009 0x00 0x9019 (空き) 0x900A 0x0C 0x901A (空き) 0x900B 0x90 0x901B (空き) 0x900C 0x0D 0x901C (空き) 0x900D 0x00 0x901D (空き) 0x900E 0x10 0x901E (空き) 0x900F 0x90 0x901F (空き) 挿入後の状態 アドレス メモリ アドレス メモリ 0x9000 0x01 0x9010 0x12 0x9001 0x00 0x9011 0x00 0x9002 0x04 0x9012 0x20 0x9003 0x90 0x9013 0x90 0x9004 0x02 0x9014 0x05 0x9005 0x00 0x9015 0x00 0x9006 0x14 0x9016 0x08 0x9007 0x90 0x9017 0x90 0x9008 0x08 0x9018 (空き) 0x9009 0x00 0x9019 (空き) 0x900A 0x0C 0x901A (空き) 0x900B 0x90 0x901B (空き) 0x900C 0x0D 0x901C (空き) 0x900D 0x00 0x901D (空き) 0x900E 0x10 0x901E (空き) 0x900F 0x90 0x901F (空き) struct singly_list { short value;

struct singly_list *next; };

(15 点)

(25 点)

① ②

(6)

問題6.数学的思考(証明...

分析、分解と再構築) ある 3 桁の自然数nの各桁を、それぞれ a,b,c で表すとする。 (例えば、123 という数の場合、a=1 , b=2 , c=3 となる) このとき、a+b+c が 3 の倍数ならば、元の自然数nも 3 の倍数であることを証明せよ。 (例の 123 の場合、1+2+3=6 で 3 の倍数なので、元の 123 という数も 3 の倍数) 各桁をそれぞれ a , b , c で表しているので、元の数nは、 n = 100 a + 10 b + c と表される。 (式1) ここで、a+b+c が3の倍数なので、a+b+c = 3 k(k は任意の自然数)と置き、 式1を整理すると、 n = ( a + b + c ) + 99 a + 9 b = 3 k + 9 (11 a + b ) = 3 ( k + 3 ( 11 a + b ) ) (式2) 式2より、nには3が因数に含まれるので、元の数nも3の倍数であることが 証明される。 配点表 問題1 問題2 問題3 問題4 問題5 問題6 1-1 各 2 点 2-1 各 3 点 3-1 各 8 点 1-2 各 5 点 2-2 各 3 点 (1) 4 点 4-1 各 3 点 5-1 15 点 1-3 各 3 点 (1)12 点 (2)10 点 2-3 (2)10 点 3-2 (3)10 点 4-2 22 点 5-2 25 点 40 点 (40 点)

参照

関連したドキュメント

この見方とは異なり,飯田隆は,「絵とその絵

社会,国家の秩序もそれに較べれば二錠的な問題となって来る。その破綻は

社会,国家の秩序もそれに較べれば二錠的な問題となって来る。その破綻は

現実感のもてる問題場面からスタートし,問題 場面を自らの考えや表現を用いて表し,教師の

そのほか,2つのそれをもつ州が1つあった。そして,6都市がそれぞれ造

c マルチ レスポンス(多項目選択質問)集計 勤労者本人が自分の定年退職にそなえて行うべきも

 筆記試験は与えられた課題に対して、時間 内に回答 しなければなりません。時間内に答 え を出すことは働 くことと 同様です。 だから分からな い問題は後回しでもいいので

食べ物も農家の皆様のご努力が無ければ食べられないわけですから、ともすれば人間