第 2 章 数値の入力と変数 scanf と変数をやります 第 2 章 数値の入力と変数 1
以下のプログラムを実行してみよう C 言語では文の最後に「 ; 」(セミコロン)が付きます 第 2 章 数値の入力と変数 2 #include int main() { int x; x = 3; printf("x の値は %d です \n", x); return 0; } x の値は 3 です 実行結果
int とは int は「イント」と読みます int は整数という意味 「 int x; 」で、整数の変数 x が作られる 名前は半角文字で自由につけられる 「 int variable; 」「 int hensuu; 」など 変数は箱だと考え、名前が書かれて中に数字が入る箱が作ら れるのをイメージしよう int は「イント」と読みます int は整数という意味 「 int x; 」で、整数の変数 x が作られる 名前は半角文字で自由につけられる 「 int variable; 」「 int hensuu; 」など 変数は箱だと考え、名前が書かれて中に数字が入る箱が作ら れるのをイメージしよう 第 2 章 数値の入力と変数 3 int x; ?x?x int hensuu; ? hensu u
変数に代入 「 = 」は、左の変数に右の値を代入しなさい、という意味 「 x = 3; 」は、 x に 3 を代入しなさい、という命令である x という箱に 3 が入ります 「 = 」は、左の変数に右の値を代入しなさい、という意味 「 x = 3; 」は、 x に 3 を代入しなさい、という命令である x という箱に 3 が入ります 第 2 章 数値の入力と変数 4 x = 3; 3x3x ?x?x 3
変数の値 プログラム中に変数を使うと、 その変数の値が取り出される プログラム中に x があると、 そこは 3 になる printf で 3 が画面に表示される プログラム中に変数を使うと、 その変数の値が取り出される プログラム中に x があると、 そこは 3 になる printf で 3 が画面に表示される 第 2 章 数値の入力と変数 5 printf("x の値は %d です \n", x); 3x3x x の値は 3 です 3 x printf("x の値は %d です \n", 3); 3
以下のプログラムを実行してみよう 実行したら、 好きな数字を 入力して、 Enter キーを押 してね 第 2 章 数値の入力と変数 6 #define _CRT_SECURE_NO_WARNINGS #include int main() { int x; scanf("%d", &x); printf("x の値は %d です \n", x); return 0; } 10 x の値は 10 です VC ならこの部分 VS2013 ならこの部分
scanf とは scanf は「スキャンエフ」と読みます キーボードから値を入力する関数 入力して Enter キーを押すまで次に進みません 入力された数値は変数に代入される 「 %d 」は整数という意味 「 &x 」は、 x の値を取り出すのではなく、 x という箱を表す scanf では「 & 」をつけよう! scanf は「スキャンエフ」と読みます キーボードから値を入力する関数 入力して Enter キーを押すまで次に進みません 入力された数値は変数に代入される 「 %d 」は整数という意味 「 &x 」は、 x の値を取り出すのではなく、 x という箱を表す scanf では「 & 」をつけよう! 第 2 章 数値の入力と変数 7 scanf("%d", &x); ?x?x 10 x
VS2013 で scanf を使うとき scanf には微妙に問題点がある(詳しくはウィキペディアで) そのため、 VS2013 では scanf (など)が禁止されている! しかし、 scanf は授業にも教科書にもあり、プログラミングを学ぶ上で scanf は必要である そこで、 VS2013 では一番上にこの行を入れて scanf を使えるようにします 今後、説明がなくても VS2013 では常に一番上にこの行が入っているものとします VC には関係ないので気にせず進みましょう Ubuntu には全く関係ありませんし、授業にも試験にも出ません scanf には微妙に問題点がある(詳しくはウィキペディアで) そのため、 VS2013 では scanf (など)が禁止されている! しかし、 scanf は授業にも教科書にもあり、プログラミングを学ぶ上で scanf は必要である そこで、 VS2013 では一番上にこの行を入れて scanf を使えるようにします 今後、説明がなくても VS2013 では常に一番上にこの行が入っているものとします VC には関係ないので気にせず進みましょう Ubuntu には全く関係ありませんし、授業にも試験にも出ません 第 2 章 数値の入力と変数 8 #define _CRT_SECURE_NO_WARNINGS
以下のプログラムを実行してみよう 第 2 章 数値の入力と変数 9 #include int main() { int x; printf("x > "); scanf("%d", &x); printf("x の値は %d です \n", x); return 0; } x > 10 x の値は 10 です
scanf は printf とセットで使おう scanf だけだと、止 まっているように 見える printf で「 > 」を表 示し、入力のため あえて改行しない すると、入力しな きゃいけないとい うことがよくわか る! scanf だけだと、止 まっているように 見える printf で「 > 」を表 示し、入力のため あえて改行しない すると、入力しな きゃいけないとい うことがよくわか る! 第 2 章 数値の入力と変数 10 printf("> "); scanf("%d", &x); printf(" 数値を入力してください > "); scanf("%d", &x); > 数値を入力してください > scanf("%d", &x); ?
練習問題 x, y の値を入力させ、その和を表示するプログラムを作りなさい 第 2 章 数値の入力と変数 11 x > 3 y > 4 x + y = 7
練習問題 解答例 1 文で 2 つの変数を作ることもできます 第 2 章 数値の入力と変数 12 #include int main() { int x; int y; printf("x > "); scanf("%d", &x); printf("y > "); scanf("%d", &y); printf("x + y = %d\n", x + y); return 0; } int x, y;
終わり お疲れ様でした 第 2 章 数値の入力と変数 13