基本情報トップに戻る
B難易度: 2026年度

基本情報技術者 予想問題B 第75問

問題

次のプログラムで、引数の文字列strから文字cを数える関数の戻り値はどれか。strは"hello world"、cは"l"。 ○ 整数型: countChar(文字列型: str, 文字型: c) 整数型: count ← 0 整数型: i for (i を 0 から str の長さ−1 まで 1 ずつ増やす) if (str[i] = c) count ← count + 1 endif endfor return count

選択肢

  1. 1ア 1
  2. 2イ 2
  3. 3ウ 3
  4. 4エ 4

正解

3. ウ 3

詳しい解説を見る

解説

正解はウ。文字列を1文字ずつ走査し、目的の文字cと一致した回数を数える関数である。"hello world"を分解するとh、e、l、l、o、空白、w、o、r、l、dの11文字であり、"l"はhelloの3・4文字目とworldの4文字目(添字では2、3、9)の合計3か所に現れるため、戻り値はcount=3となる。イの2はworld側の"l"を見落とした場合、エの4は"o"など別の文字も誤って数えた場合、アの1は明らかな数え漏れである。この種の問題は単純だが、空白も1文字として扱う点や、目視で数える際の見落としがミスの原因になる。文字列を配列と同様に添字でアクセスし、forループとif文で条件に合う要素を数える「条件カウント」の形は科目Bの最頻出パターンであり、確実に得点したい問題である。

一問一答

科目A 180問+科目B 60問

Bの関連問題

この調子で演習を続けよう

スキマ資格では基本情報の全2398問を分野別・難易度別に体系的に学習できます。基本情報技術者は科目A(広く浅く)と科目B(プログラミング・アルゴリズム)の両輪での対策が必要です。