宣言と入出力
変数などの宣言と入出力は、ここでの主目的であるアルゴリズム本体にはあま
り関係ないが、実際にプログラムを作成してアルゴリズムを確認するには必要
なので、ここで簡単に説明する。
1.include インクルード
予め用意されている標準関数の宣言を他のファイルから取り込む
このため、プログラムの先頭には
#include <stdio.h>
#include <math.h>
を書く
2.main 関数の定義
アルゴリズムの本体を表すために、アルゴリズム全体を含むブロックを
main 関数として定義する
このためには、アルゴリズム全体を示すブロックの開始を表す「 { 」
の前に main( ) を書く。
(関数の詳細)
3.変数の宣言
Cではすべての変数は予め型を宣言しなくてはならない。
このためブロックの先頭に変数宣言を書く。
変数宣言の形は、
整数の場合
int 変数名 ;
実数の場合
double 変数名 ;
配列(添字つき変数)の場合要素数を指定して次のように書く。
実数の場合
double 配列名[要素数] ;
指定する要素数は定数でなくてはならない
(定数と定数の演算式であってもよい)
使用する可能性のある最大の要素数を指定する
C では添字は 0 から始まるので、使用可能な添字の最大値は(要素数-1)
である。テキストの様に、添字として、1 から N を使いたい時は、
要素数 N+1 と宣言して、先頭要素 0 を使わないのが簡単である。
(もう少し詳しい変数宣言(局所変数)の説明)
4. 入力
数値の入力には、scanf を用いる。
int の入力には scanf("%d", & 変数名);
double の入力には scanf("%lf", & 変数名);
とする。& は必ず必要である。
(もうすこし詳しいscanfの説明)
5. 出力
数値の出力には、printf を用いる。
int の出力には printf("%d\n", 変数名);
double の出力には printf("%f\n", 変数名);
その他の文字列の出力には例えば printf("mojitretu\n");
とする。
(もう少し詳しいprintfの説明)
6.マクロ定義
必須ではないが、C プログラムでしばしば用いられるので、
ここで用いられる使い方のみ説明する。
プログラム中で数箇所で用いられる定数に名前をつけて、次の効果を得る。
1. 数値の意味を示す
2. 数箇所を変更する手間を省く。
また、一部の変更忘れを防ぐ
ここでは
#include のあとに
#define 名前 値
名前は慣習として大文字である。プログラムファイル中でこれ以降、
「名前」は「値」に 文字通り 置き換えられて解釈されるので、
場合によっては非常に分かりにくい誤りを引き起こす。このため
新しい C では推奨されず、別の仕組みを用いる。