サイタパソコン教室・IT資格情報処理技術者試験対策講座基本情報技術者試験 神奈川 基本情報技術者試験対策セミナー レッスンノート 再帰呼び出し・バイナリファイルの読み書き

再帰呼び出し・バイナリファイルの読み書き

基本情報技術者試験対策講座のレッスンノート

レッスンノートって?レッスンノートって?

7/30 のレッスン内容は、以下の通りです。

 ・ 再帰呼び出しのおさらい
 ・ バイナリファイルの読み書き

詳細は、レッスン時にお渡ししたノートを参照してください。

□ 再帰呼び出しのおさらい

前々回までのテーマだった「最短経路の距離を求めるプログラム」について、以下の質問があったので説明しました。

 ・ 最短経路を表示させる処理が、どのように動いているのか?

この処理は、再帰呼び出しによって実施しています。再帰呼び出しは、関数の中で自分自身を呼び出すものでした。

再帰呼び出しを使う場合は、以下の点だけ注意してください。

 ・ 出口(再帰呼び出ししないで、関数を終わらせること)を必ず用意すること

以前説明した階乗の計算では、n == 0の時が出口となっていましたね。

今回のソースコードでは、

 if(route->start == destination)

を満たす場合が出口になります(return文がないですが、再帰呼び出しの部分は通っていないことを注目)。


詳細の動き方は、別途お渡ししたノートを参照してください。

□ バイナリファイルの読み書き

バイナリファイルの読み書きについては、以下のように実施します。

 [読み込み]
 ・ fopen()を使う際に、第2引数に"rb"を指定する
 ・ 読み込むための関数はfread()を使用する
  - fread() の戻り値は、何ブロック読み取れたかを示す整数値。0の場合は、これ以上読み取れるものがないことを示す

 [書き込み]
 ・ fopen()を使う際に、第2引数に"wb"を指定する
 ・ 読み込むための関数はfwrite()を使用する

目的・種類別に基本情報技術者試験対策・合格講座を探す

新着レッスンノート

10/14 のレッスン内容は、以下の通りです。  ・ C言語文法   - charとsigned/unsigned charの違い   - 日本語コード 詳細は、紙でお渡ししたノートも参照してください。 □ C言語文法 今回も、C言語プログラミングの中級編の問題を題...

10/13 のレッスン内容は、以下の通りです。  ・ マネジメント・戦略の午後問題の解説 詳細は、レッスン中に紙でお渡ししたノートも併せて参照してください。 □ マネジメント・戦略の午後問題の解説 今回は、以下の過去問について解説しました。  ・ 2018年度...

10/7 のレッスン内容は、以下の通りです。  ・ ヒープソートに関するアルゴリズム問題の解説 詳細は、レッスン中に紙でお渡ししたノートも併せて参照してください。 □ ヒープソートに関するアルゴリズム問題の解説 今回は、以下の過去問について解説しました。  ・...

9/24 のレッスン内容は、以下の通りです。  ・ C言語文法   - 実引数と仮引数   - 文字の表示 詳細は、紙でお渡ししたノートも参照してください。 □ C言語文法 今回も、C言語プログラミングの中級編の問題を題材にレッスンを進めました。 〇 実引数と...

9/9のレッスン内容は、以下の通りです。  ・ C言語の応用編   - 水平タブの出力  ・ 情報処理関連   - 改行コードの違い   - クロックと秒の関係 詳細は、紙でお渡ししたノートも参照してください。 □ C言語の応用編 〇 水平タブの出力 C言...

レッスンノート ページ先頭へ

基本情報技術者試験情報

サイタの基本情報技術者試験講師がブログを通して、基本情報技術者試験情報を発信。更新情報のチェックはこちらから!