第8章 C言語の関数 ~ 関数の作り方とモジュール分け ~
何も、関数は繰り返し使われる処理を、まとめるだけではありません。
大きなプログラムになると、何千行、何万行にもなってきます。 これを main 関数の中だけに記述されると、 とてもわかりづらいプログラムとなってしまいます。 そこで大事なのが、プログラムを機能ごとの小さな関数に分割することです。
ここで、車を作るプログラムをイメージしてください。 ごくごく簡単に機能を挙げるとすると、以下のようになると思います。
エンジン機能
・ピストン
・スパークプラグ
ボディ機能
・ボディ
・ミラー
・窓
車輪機能
・タイヤ
・ホイール
これを、それぞれ関数にしてプログラムを作れれば、良いプログラムと言えるでしょう。 このプログラムを、サンルーフ付きの車を作るプログラムに変更する場合も、 ボディ機能の部分だけを気にすればよいのです。
もし、main関数だけで記述されていたら、 全体に目を通して、ボディ機能の記述を探す必要が出てきます。
このような機能ごとに関数にして分けることを、モジュール分けといいます。 みなさんには、初めからモジュール分けを心がけて欲しいのです。
以上です。
さらに時間が余った人は、関数に文字列を渡すプログラムを打ち込んでみてください。
— リスト21``````–
#include <stdio.h>
/**
* 関数プロトタイプ宣言
*/
int goukeiPrint(char *item, int tanka, int num);
void main() {
int tanka;
int num;
int sum=0;
tanka = 2000;
num = 4;
sum = sum + goukeiPrint("シャンプー", tanka, num);
tanka = 1500;
num = 5;
sum = sum + goukeiPrint("石鹸", tanka, num);
tanka = 3000;
num = 2;
sum += goukeiPrint("洗剤", tanka, num);
printf("総計は、%d円です。\n", sum);
}
/**
* 単価と個数から、合計を計算して表示する関数
* ・計算には消費税5%分を含める
*/
int goukeiPrint(char *item, int tanka, int num) {
int sum;
sum = tanka * num * 105 / 100;
printf("%sの合計は、%d円です。\n", item, sum);
return sum;
}
< 前のページへ
次のページへ > -
IS 559680 / ISO27001
認証範囲 本社情報セキュリティ基本方針 -
個人情報保護方針
個人情報の取扱いについて
保有個人データ又は
第三者提供記録に関する
事項の周知について
特定個人情報の取扱いについて -
FS 671851 / ISO9001
認証範囲 本社品質方針







