画像(logo)

HOME/[C言語 入門]小学生でもわかるC言語 目次/六日目 入力「scanf」命令!

広告

[C言語 入門 小学生でもわかるC言語]
六日目 入力「scanf」命令!

広告

↓発売日:2018年09月22日↓

たった1日で基本が身に付く! C言語 超入門

新品価格
¥2,225から
(2018/10/8 23:10時点)

目次へ戻る

scanf(スキャンエフ)

お待たせしました!入力のお時間です!

コントローラーのボタンを押すとゲームの中の主人公がジャンプしたりするように、少しだけアナタの思い通りにコンピューターを動かしてみましょう!

数字を受け取って表示

/*六日目 プログラム1*/
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>

int main(){
	int suji;

	printf("100~200の間の数字を入れて\n");
	printf("Enterを押してください>");
	(void)scanf("%d",&suji);

	printf("%d\n",suji);

	return 0;
}

■実行結果■

画像(cb_6_1)

■説明■

キーボードから受け取った数字を変数「suji」に入れて「printf」命令で表示します。

100~150の間とありますが、大きな数字などを入れておかしな結果にならないように間を決めただけで、もちろんこれ以外の数字も入れられます!

では今回新しく登場した命令を見てみましょう!

(void)scanf("%d",&suji);

「scanf」命令です!実行するとキーボードの入力待ちになってEnterキーで入力内容を受け取ります!

先頭の「(void)」っていうのも必要なのでとりあえずくっつけておいてください。

変数の初期化はどうしたっ!?

この場合は「scanf」命令で入力内容を受け取った時が初期化になるので大丈夫です。

「printf」命令に使い方は似ています。

数字を受け取る時はやっぱり「%d」を使います。そしてお尻の部分が受け取るための変数になります!

変数の先頭に「&」アンパサンドをつけるトコロに注意です!

気を付けて!

いよいよおもしろくなってきたと思ってこの「scanf」命令をたくさん使ってプログラムしたら上手くいかない時があります!

これは初心者には解決するのが難しい「scanf」命令の悪いクセになります!

「scanf」命令は入力の考え方を学ぶにはわかりやすいのでC言語の入門でよく使われるのですが、エラーも多いので、今は入力した文字や数字を変数が受け取るということだけを学んでください!

あとやたら大きな数を入力してみたり、数字の入力なのに文字を入れてみたりとかも、コンピューターを困らせてエラーの原因になってしまう事があるのでやめましょう!

#define _CRT_SECURE_NO_WARNINGS

今回から謎(なぞ)の言葉が仲間入りしました。

これは「scanf」命令や他のいくつかの命令を使うためのおまじないなので、今は特に気にせずプログラムの頭に書いておきましょう!

広告

文字を受け取って表示

/*六日目 プログラム2*/
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>

int main(){
	char moji;

	printf("アナタの血液型を入力してください>");
	(void)scanf("%c",&moji);

	printf("アナタの血液型は%c型ですね!\n",moji);

	return 0;
}

■実行結果■

画像(cb_6_2)

■説明■

(void)scanf("%c",&moji);

文字を受け取る時も「printf」命令の時と同じく「%c」を使います!

変数の先頭に「&」アンパサンドを忘れずにつけましょう!

マイ計算機

/*六日目 プログラム3*/
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>

int main(){
	int suji1,suji2;
	
	printf("2つの数を計算します\n\n");

	printf("1つ目の数を入力してください>");
	(void)scanf("%d",&suji1);
	printf("2つ目の数を入力してください>");
	(void)scanf("%d",&suji2);

	printf("\n1つ目の数 = %d 2つ目の数 = %d\n\n",
		suji1,suji2);
	printf("%d + %d = %d\n",
		suji1,suji2,suji1 + suji2);
	printf("%d - %d = %d\n",
		suji1,suji2,suji1 - suji2);
	printf("%d * %d = %d\n",
		suji1,suji2,suji1 * suji2);
	printf("%d ÷ %d = %d 余り %d\n",
		suji1,suji2,suji1 / suji2,suji1 % suji2);

	return 0;
}

■実行結果■

画像(cb_6_3)

■説明■

プログラムが入りきれなかったので途中(とちゅう)で折り返しておりますが、プログラムする時はそのままつなげて書いても大丈夫です!

「,」コンマとか区切りのよさそうな所で折り返すのは大丈夫なのです!

前回やった計算の方法と合わせて簡単な計算機を作ってみました!

printf("%d + %d = %d\n",suji1,suji2,suji1 + suji2);

「%d」がたくさんあって複雑に見えますが、表示させたい順番でお尻の変数を並べるだけです!

「数字を一つ入れてEnter」とする分には「scanf」命令の悪いクセもそんなに出ないのでいろいろ試してみてください!

次回

七日目 if(もし~だったら)!

□ページの先頭へ□

□目次へ戻る□

□HOME□

広告

↓発売日:2016年02月29日↓

12歳からはじめる ゼロからのC言語 ゲームプログラミング教室

新品価格
¥2,462から
(2018/10/8 23:25時点)

↓発売日:2018年06月22日↓

スッキリわかるC言語入門

新品価格
¥2,916から
(2018/10/8 23:15時点)

↓発売日:2018年03月09日↓

C言語本格入門 ~基礎知識からコンピュータの本質まで

新品価格
¥3,218から
(2018/10/8 23:16時点)

↓発売日:2017年06月14日↓

やさしいC 第5版 (「やさしい」シリーズ)

新品価格
¥2,700から
(2018/10/8 23:17時点)

↓発売日:2018年05月21日↓

作って身につく C言語入門

新品価格
¥2,462から
(2018/10/8 23:18時点)

↓発売日:2017年12月07日↓

新・標準プログラマーズライブラリ C言語 ポインタ完全制覇

新品価格
¥2,678から
(2018/10/8 23:19時点)

↓発売日:2017年02月08日↓

新・明解C言語で学ぶアルゴリズムとデータ構造 (明解シリーズ)

新品価格
¥2,700から
(2018/10/8 23:20時点)

↓発売日:2017年09月26日↓

かんたん C言語 [改訂2版] (プログラミングの教科書)

新品価格
¥2,916から
(2018/10/8 23:22時点)