標準入力とは

標準入力とは、プログラムに入ってくるデータのことです。通常、標準入力とはキーボードからの入力のことを指します。

標準入力と同じように標準出力、標準エラー出力というのもあります。標準出力はプログラムが書き出すデータのことで、標準エラー出力はプログラムが吐き出すエラーのことです。

標準入力 キーボード
標準出力 コマンドラインの画面
標準エラー出力 コマンドラインの画面

標準入力と標準出力を合わせて標準入出力といい、英語にするとStandard I/Oです。
ちなみに、いつもおまじないとして書いている#include のstdioは、standard i/oの略です。

printf()関数は、標準出力にデータを書き込む関数です。

scanf()関数

標準入力(キーボード)からデータを読み込むには、scanf()関数を使用します。

細かいことは後にして、とりあえず使えるようになりましょう。以下のコードを書いてください。ファイル名は、scanf.cとします。

1
2
3
4
5
6
7
8
9
10
11
12
13
#include <stdio.h>

int main(void)
{
int age;
printf("年齢を入力してください。\n");
printf("-->");
scanf("%d", &age);

printf("あなたの年齢は、%d歳ですね。\n", age);

return 0;
}

キーボードからの入力を変数に代入するscanf()関数は、以下のように使います。

scanf("%d", &x); // 変数xにキーボードから入力された整数値を格納する

なぜ&xなのか? という疑問も出てくるでしょうが、いったん置いておきましょう。

とりあえず今は、変数名に &(アンド) をつけるんだな、程度の認識で良いです。

ちなみに、実数値や文字を扱うこともできます。

float weight;
char code;
printf("体重を入力してください。\n");
printf("-->");
scanf("%f", &weight);
printf("コードを入力してください。\n");
printf("-->");
scanf("%c", &code);

文字列を扱いたくなるかもしれませんが、それもまた後回しにしましょう。