過去問解きまくり研究所 ホーム

平成29年度 春期 午前 問18

ソフトウェア

カレントディレクトリに関する問題

A,B という名の複数のディレクトリが,図に示す構造で管理されている。“¥B¥A¥B”がカレントディレクトリになるのは,カレントディレクトリをどのように移動した場合か。ここで,ディレクトリの指定は次の方法によるものとし,→ は移動の順序を示す。

〔ディレクトリ指定方法〕

(1) ディレクトリは,“ディレクトリ名¥…¥ディレクトリ名”のように,経路上のディレクトリを順に“¥”で区切って並べた後に,“¥”とディレクトリ名を指定する。
(2) カレントディレクトリは,“.”で表す。
(3) 1階層上のディレクトリは,“..”で表す。
(4) 始まりが“¥”のときは,左端にルートディレクトリが省略されているものとする。
(5) 始まりが“¥”,“.”,“..”のいずれでもないときは,左端に“.¥”が省略されているものとする。

図(木構造の図):

ルート
├── A
│   ├── A ──┬── A
│   │       └── B
│   └── B ──┬── A
│           └── B
└── B
    ├── A ──┬── A
    │       └── B
    └── B ──┬── A
            └── B
(=ルートの直下に A・B,その各々の直下に A・B,さらにその各々の直下に A・B の3階層)
答えと解説を見る

✓ これが正解ア¥A → ..¥B → .¥A¥B

解説

根からA、上へ戻ってB、そこからAとBへ順に進みます。

目指すのは、Bの下のA、そのまた下のBという三階層の場所です。一つずつ移った先を追いかけて、行き着く場所を確かめます。正解の一つ目は、根から数えてAへ移りました。二つ目は上へ戻ってからBへ入るので、根の真下のBに立ちます。三つ目はカレントディレクトリからAへ、続けてBへ進みました。出発点がBだったので、三階層めのBに届きました。これが問われた場所と一致しました。二つ目の肢は、Bへ移ってから、その下のBのAまで潜ります。最後に上へ戻ってBへ入るため、途中のAが抜け落ちました。三つ目の肢は、三回とも書き出しが根を指す記号でした。前の移動が打ち消されるので、一階層で止まります。四つ目の肢は、Bの下のAまで一度で移りました。そこから一つ上がってBへ進むと、深さが一つ足りません。

ほかの選択肢はなぜ違うのか

出典:平成29年度 春期 基本情報技術者試験 午前 問18

この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)