3-1 変数とprintf、コメントを使ってみる

まずこのプログラムを見てください。

(ソースコードのファイル名はprg.c)
 1 #include <stdio.h>
 2 /**************************************
 3 変数を使ったプログラム
 4 ***************************************/
 5
 6 main()
 7 {
 8     //変数を宣言します
 9     int apple;//整数型 りんごの個数
10     double pi;//実数型 円周率の値
11     char c;   //文字型 1文字を記憶しておく
12
13     //以下は実行文
14     apple = 5;
15     pi = 3.14;
16     c = 'A';
17
18     /* 変数の値をプリントします */
19     printf("リンゴは%d個です\n",apple);
20     printf("円周率は%fです\n",pi);
21     printf("この文字は%cです\n",c);
22 }
この実行結果は以下のとおりです。
(windowsでは)
gcc prg.c -o prg.exe
prg.exe

(Linuxでは)
cc prg.c -o prg
./prg

リンゴは5個です
円周率は3.140000です
この文字はAです

1行目はprintf関数を使用するためのものです。
今は、必ず必要なおまじないだと思っておいてください。
それでは順番に見ていきましょう。
(上のサンプルプログラム実行する場合は、コピペでprg.cファイルに張り付けて行番号を消すと実行できますよ)

コメント

コメントとは、説明のメッセージを付けることです。この書き方を説明します。
2~4行はコメントです。複数行にわたるコメントを使用したい場合には、
/* */
でコメントを囲います。

8行、13行は1行のコメントの書き方です。

18行は1行のコメントですが、複数行の書き方でもOKです。

変数

9行~11行は変数の宣言です。
変数とは中学校の数学で習う変数と同じです。
y = 5x + 2
みたいな式の、x, y などです。
何かの数値や文字などが入る入れ物です。
C言語では変数は使用する前に(実行文の始まる前に)宣言する必要があります。
そして、変数の宣言には型があります。みていきましょう。

 9     int apple;//整数型 りんごの個数
10     double pi;//実数型 円周率の値
11     char c;   //文字型 1文字を記憶しておく

int は整数を入れる型です・・・1, 50, 1000 などを入れます
double は実数を入れる型です・・・1.4, 50.023, 100.0 などを入れます
char は文字を入れる型です・・・a, G, $, @, 8 などを入れます

apple, pi, c などは変数の名称です。好きな名前でよいのですが約束があります。
アルファベット、数字、アンダーバーを使用しますが、先頭の数字は不可です。

次の例を見てください。

1 #include <stdio.h>
2
3 int main()
4 {
5     int abc, z80, item_01, item_02;
6     double d_param;
7     char ch1, ch2;
8 }

5行~7行のような感じで変数名を宣言します。
ここで、もう一つ変数の宣言3行目にあります、 int main() です。
int だと整数型という意味です。
型が整数型ということは、mainという関数はmainという関数を実行した結果として
整数の値を返すということです。
mainという関数も、実は整数値を返すことができるのです。
整数値を返さなくてはいけないのです。
次の例を見てみましょう。

(ソースコードのファイル名はprg.c)
#include <stdio.h>

int main()
{
   return 3;
}

このプログラムを実行して結果を確認します。

(windowsでは)
gcc prg.c -o prg.exe
prg.exe

echo %ERRORLEVEL%
3

(Linuxでは)
cc prg.c -o prg
./prg

echo $?
3

main関数はreturnという命令で値を返すことができます。
int main は main関数が整数値を返すよと宣言しているのです。
実行した結果、windowsですとコマンドプロンプトに、Linuxですと端末に、3が返されます。
ここでは関数も値が返せるということだけ意識してください。

変数の実行文

14行~16行が実行文です。
変数に値を入れたり、変数同士の計算を行う文のことです。

14     apple = 5;
15     pi = 3.14;
16     c = 'A';

14行、15行は変数に数値を入れています。
16行は変数名c にAという文字を入れています。
シングルクオーテーションでAを囲っているのは文字ですよという意味です。
文字の8を入れるのであれば、 c = '8'; となります。

printf関数

変数の内容をプリントするには、printf関数を使用します。

19     printf("リンゴは%d個です\n",apple);
20     printf("円周率は%fです\n",pi);
21     printf("この文字は%cです\n",c);

この実行結果は以下のとおりです。

リンゴは5個です
円周率は3.140000です
この文字はAです

使い方は
ptintf("出力書式", 変数1、変数2、・・・, 変数n);
となります。

printf("ちょっとテスト出力\n");
printf("%d  %f  %c\n",apple,pi,c);
printf("apple=%d  pi=%f  c=%c\n",apple,pi,c);
実行結果は以下のとおりです。

ちょっとテスト出力
5  3.140000  A
apple=5  pi=3.140000  c=A

出力書式は、自分が表示したいメッセージと変換指定子からなります。
変換指定子とは上記の例の、%d や %f や %c のことです。
これらは、整数、実数、文字など表示してねという意味です。
もっと高度に何桁で表示してね、といった指定もできます。これが変換指定子です。

出力書式の最後に \n を入れているのは、改行(行を変える)してという意味です。
改行しないと以下のようになります。

printf("ちょっとテスト出力");
printf("%d  %f  %c",apple,pi,c);
printf("apple=%d  pi=%f  c=%c",apple,pi,c);
実行結果は以下のとおりです。

ちょっとテスト出力5  3.140000  Aapple=5  pi=3.140000  c=A

プログラムの構成

プログラムの構成は以下のようになります。

おまじないのinclude文を書く部分

main()
{
    変数の宣言を書く部分

    実行文を書く部分
}

ポイント・コツ

分からないことや、どうだろうという疑問があったら、まあ分かっただろうと言い聞かせて
次に進みましょう。完璧主義ではなく80点主義がポイントです。
そのうち何とかなります。

コメント

タイトルとURLをコピーしました