数値の入力と変数

Download Report

Transcript 数値の入力と変数

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