8問必須問題で出題されます。各問に対する対策と傾向について解説していきます。
スポンサーリンク
C言語プログラミング能力認定試験(2級)の勉強法
問1:○×問題
・ベテランC言語開発者でも、聞かれると「?」となるような問題が出題されます。2割程度は去年の問題から、7割ぐらいは過去5年分ぐらいから出題されるので、過去問を暗記すればOKです。
問2:穴埋め選択問題
プログラムの説明分と、ソースコードの穴埋めを行う問題です。穴埋めの選択肢は5つぐらいから選ぶ事になります。
ソースレビューを行う経験があれば特に苦戦する事はありません。経験がなければ、普段から誰かに説明する癖をつければ良いと思います。
問3:穴埋め選択問題
プログラムの仕様に対し、ソースコードを穴埋めする問題です。四則演算は当然の事ながら、論理和・論理積・排他的論理和の使い方・違いなどを理解している事を問われる問題が出題されます。
普段の開発でビット演算を行う経験が少ない人はビット演算について理解を深めましょう。また、ビット演算なので、16進表記も当然出てくるので、そこもしっかり押さえましょう。
問4:穴埋め選択問題
プログラムの仕様に対し、データ構造をどのように設計すべきか?を穴埋め形式で、回答する問題です。対象はソースと説明分の両方なので、データ構造に対するレビュー経験があれば問題無く解けます。
あと、構造体の中身は実態で定義するのか、ポインタで定義するのか?といった観点の設計能力も必要になります。
問5:実行結果予測
プログラム実行結果、何と印字されるか?という問題です。問われる能力は大きく二つ、①ポインタ②ループです。
①ポインタについて理解が必要になります。メモリ上データ配置がどのようになっているのか?と、プログラム実行中はポインタがどこのアドレスを参照しているのか?を追跡できる能力を求められます。
実際に過去問のプログラムを実装して、ステップ実行でメモリやデータの変更を追跡すると、飛躍的にポインタに対する理解が深まります。机上でやってもなかなか理解は深まりませんし、すぐ忘れます。
②ループについては、繰り返し処理する事で何回実行され、どこでループを抜けるのか?といった変数の変化の追跡能力が求められます。
これも同様に実装してステップ実行する事で、能力が飛躍的に伸びます。
問6:リファクタリング
ソースが記載されており、そのソースと同等の処理を行う標準関数を答える問題です。
これは標準関数の仕様をそもそも理解していないと解けない問題なので、標準間は普段使わないものも含めって、「違い」をしっかり理解しておきましょう。
問7:ソース穴埋め
実際の仕事に近い問題が出題されます。要件定義、設計、実行結果が説明されており、ソースコードが穴埋めになっている問題です。
問1~6の総括ような問題です。重複しますが、押さえるポイントは①ポインタ②ループの追跡③標準関数の仕様(引数と戻り値)④判定演算子⑤構造体の添え字です。
各問をまんべんなく勉強していくことが重要です
テキストの紹介
試験実施団体である「サーティファイ」のHP内に公式問題集と推薦書籍が紹介されているのでご確認ください。
公式問題集として過去問が紹介されています。こちらはアマゾンでも販売されていますが、なぜか中古本しかなくてしかも値段が新品より高いという訳の分からない現象が起きていますので、サーティファイのHP内から購入した方が良いです。
推薦書籍として「新訂 新C言語入門 シニア編
どちらもお勧めですが、わかりやすいC 入門編はその名の通り、これからプログラミングの勉強をされる方に向けたテキストになるので、かなり丁寧に解説されているのでお勧めです。
参考記事 C言語プログラミング能力検定のお勧めテキスト・参考書・問題集・過去問を紹介
受験者数・合格率
- 累計受験者数:154,962人(平成28年3月31日)
- 合格率:66.9%(平成27年度平均合格率)
難易度(勉強時間)
3級を取得できる知識のある方で2週間~1ヵ月程です。
出題傾向はほぼ変わらないので、過去問5回分ぐらい毎日1回分やればOKです。
C言語開発経験の技術者でも、勉強無しで合格するのは難しいかもしれません。標準関数の引数の数や、「何番目に何を定義するんだったっけ?調べればわかるから暗視してないわ」という方は、そういう暗記部分で点数を落とすかもしれないからです。
C言語の開発経験者でない方はポインタの勉強などに苦戦すると思うので、2か月ぐらいは欲しいと思います。
合格基準
得点率が60%以上
試験情報
- 資格種別:民間資格
- 資格区分:1級、2級、3級
- 受験資格:なし
- 試験内容:1級:実技試験(パソコンを使用)、2級・3級:筆記試験(多肢選択解答形式・マークシート形式)
- 試験日:6月中旬、9月中旬、1月下旬
- 試験場所:札幌、東京、名古屋、大阪、福岡
- 問い合わせ先:株式会社 サーティファイ 認定試験事務局