過去に作った関数の再利用と、関数定義例です。
過去にステップ1、
ステップ2、
ステップ3と作成した時の
次の関数を再利用します。
・ iarray配列へ、キー入力追加(icountを更新)する関数→void input_ia();
・ iarray配列の全データの表示する関数→void disp_ia();
・ iarray配列へ、ファイル内容を追加 (icountを更新)する関数→void load_ia();
・ iarray配列の全データをファイルに保存する関数→void save_ia();
他の参考ページ→
配列使い方2
、ポインタ操作
プログラム仕様
まず、上記のファイル『iarray.txt』のデータを読み取って、それを表示します。
それから、希望のデータ入力させ、そのデータと一致する個数を表示するプログラムです。
以下に実行例を示します。
0:5 1:2 2:6 3:5 数えたい値>5 5の値は、2個ありました。
一つのmainでプログラミングすることも可能ですが、過去の関数を利用する例を示すのが目的なので、
その作り方でプログラミングします。
まず、プログラム仕様の目標が実現できるように、iarray配列へファイル内容を追加(icountを更新)する関数load_iaを呼び出します。
次に、iarray配列の全データの表示する関数disp_iaを呼び出します。
以上の処理は、過去に作っているからです。特定のデータを配列内において数える処理は、
後で再び使うことができるように、count_aiの名前で、新しく関数を作ります。
そして、これを利用するようにmainを作ります。
main関数における、count_aiの呼び出しでは、「数えたいデータ」を実引数にして、
戻り値の「数えた個数」を記憶するように利用しています。
しかし、関数がこの利用に合わない作り方なので、コンパイルエラーが起きています。正しく直しましょう。
関数は、使う前に定義するか、またはプロトタイプ宣言が必要で、その仕様と合わない使い方をした所で、
コンパラによるエラーの指摘がでます。(仕様と合わないとは、
戻り値の型や、引数の数、そしてそれぞれの引数の型が合わない場合です。)
このように、関数の作り方を間違えた場合でも文法的に正しければ、
呼び出し位置がエラーの対象になります。
←編集 入力後に クリックください。