scanf関数とswitch 文をくみあわせてみよう\(^o^)/ 


scanf関数とswitch 文をくみあわせてみよう\(^o^)/ 



アレサ 「・・・『牧神の午後への前奏曲』・・・


ふ~んん」


かちゃっ かちゃかちゃ かたっ ことことこと 


アレサはなにかを製作しているようです。


アレサ 「ふん、ふん ここをこうして・・」


アレサを見やるソーラー。


ソーラー「ふふ・・・アレサは 楽しそうに・・・」



ソーラー 「今までは自分の実行したいcaseの命令文の番号2を


次のプログラムのように冒頭でint a=2;とうちこんでいました。


その結果


switch (a)

switch (2)をあらわすこととなり


case 2:の後に続く命令文が実行されていました。


そのプログラムはこちらです

👇

#include <stdio.h>

int main(void){

int a=2;


switch (a){


case 1:

printf("おはようございます\n");

break;

case 2:

printf("こんにちは\n");

break;

case 3:

printf("こんばんは\n");

break;

default:

printf("24時間営業です\n");

break;

}

return 0;

}



プログラムの実行結果


こんにちは


そして


今回は


あらかじめ最初に冒頭でint a;の変数aに


数値を代入して それに対応したcaseの命令文を実行するのでなく


自分があとからに数値をうちこんで


その数値に対応したcaseの命令文を実行させたいんだ。」


マックス 「自分が打ち込んだ数値か・・・


まあ当然か


そういや・・・


自由に数値を代入するには


仲間の


scanf関数がいるじゃないか・・・」


ソーラー 「そうなんです。


scanf関数をつかい数値を変数 aにとりこみ


その数値に対応したcase文を実行させるんです。


つまり、こちらであとから自由に実行する命令文を選べる・・・


ということは


ゲームプログラムでたとえるなら


ボタンAに数値1を対応


ボタンBに数値2を対応させておけば


このボタンA(数値1を選べば)を押せば右にあるく、


このボタンB(数値2を選べば)を押せば左にあるく。


ようなプログラムをつくることも可能になるわけなんです(^^)」


マックス 「おおっ でかしたソーラー


さえてるじゃんか」


ソーラー 「まあ、このことはif else文でもできるんですけどね。


ま、とりあえず


次のプログラムをみてみてよ」


#pragma warning(disable: 4996)

#include <stdio.h>

int main(void){


int a;


scanf("%d",&a);


switch (a){


case 1:

printf("おはようございます\n");

break;

case 2:

printf("こんにちは\n");

break;

case 3:

printf("こんばんは\n");

break;

default:

printf("24時間営業です\n");

break;

}


return 0;

}


😊

Visual Studioでscanf関数を使用する場合には


冒頭で

#pragma warning(disable: 4996)


の記述が必要です


ソーラー

ほらっ マックス かんたんだよっ


scanf("%d",&a);でとりこんだ数値が


int a;に格納され


その数値に対応した


命令文が実行されるんだよ。


このプログラムは実行されると


コマンドプロンプト画面で


アンダーバー


_


が表示された


数値入力待ち受け状態になるので


数値2を打ち込んでやると


switch (2)


となり


case 2:のあとにつづく


printf("こんにちは\n");

break;


が実行されて


プログラムの実行結果


こんにちは


がコマンドプロンプト画面に表示される。


プログラムの実行結果が表示されるのに


しばらく時間がかかるね。


実行結果をまっている間が楽しみなんだよ~ん


また、この表示されたときが快感なんだよ~~~


1,2,3以外の数値がうちこまれた場合は


default :の後に続く命令文


printf("24時間営業です\n");


が実行されて


24時間営業です 


がコマンドプロンプト画面に表示されるよ。


scanf関数を使ったswitch 文の仕組みはこんなところかな。


アレサ 、ここで なにか音楽を聞かせてよ」


アレサ「そうですか


では ええっと これ・・これ? これかな?


ありました \(^^)/


では



パッヘルベルのカノン


https://youtu.be/Q6ibumuZhZE


こちらの曲をどうぞ

お聞きください




  • Xで共有
  • Facebookで共有
  • はてなブックマークでブックマーク

作者を応援しよう!

ハートをクリックで、簡単に応援の気持ちを伝えられます。(ログインが必要です)

応援したユーザー

応援すると応援コメントも書けます

新規登録で充実の読書を

マイページ
読書の状況から作品を自動で分類して簡単に管理できる
小説の未読話数がひと目でわかり前回の続きから読める
フォローしたユーザーの活動を追える
通知
小説の更新や作者の新作の情報を受け取れる
閲覧履歴
以前読んだ小説が一覧で見つけやすい
新規ユーザー登録無料

アカウントをお持ちの方はログイン

カクヨムで可能な読書体験をくわしく知る