if()continue;文はfor文の中でもちいられ if()の()内の条件式が1の値(真の値)を持つときはその繰り返しの回のcontinue;以下の命令文は実行されません 




if()continue;文はfor{}文のブロック{}内でもちいられ if()の()内の条件式が1の値(真の値)を持つときはその繰り返しの回のcontinue;以下の命令文は実行されません 



#include <stdio.h>


int main(void){


int a;


for(a=1;a<8;a++){

if(a==5)continue;

printf("%d回目のご飯はマスです\n",a);

}



printf("・・・・・・・・・(^^)\n");

printf("にゃ、にゃお~~~ん(^^)\n");

printf("お食事に・・・マス大好物にゃん\n");

printf("いりこもありますよ\n");


return 0;


}


プログラムの実行結果


1回目のご飯はマスです

2回目のご飯はマスです

3回目のご飯はマスです

4回目のご飯はマスです

6回目のご飯はマスです

7回目のご飯はマスです

・・・・・・・・・(^^)

にゃ、にゃお~~~ん(^^)

お食事に・・・マス大好物にゃん

いりこもありますよ

続行するには何かキーを押してください_


ぶーにゃん 「ぺろりんっマスがいっぱいとれるにゃんね。」


てんC 「はいっ ご近所の増田さんがいつも、


ぶーにゃんさんのためにもってきてくれます」


ぶーにゃん 「増田さん、ありがとにゃん。」


てんC 「このプログラムの実行結果をみると


5回目のご飯はマスです


がぬけています。


if() continue;文は命令文を繰り返すfor{}文のブロック{}内でもちいられ

👆

if() の()の中の論理式が真の値1をもつようになる回の


          if() continue;


        以下の命令文💖💖💖💖💖は実行せず


とばして


次の回以降の命令文の繰り返しを実行します。


このプログラムの場合では


5回目の繰り返しのとき


if()の()のなかの論理式a==5が真の値1をもつので


printf("%d回目のご飯はマスです\n",a);


が実行されず


5回目のご飯はマスです


は表示されません。


その次の


6回目のご飯はマスです


以降は表示されています


if() の()の中の論理式が真の値1をもつようになる回の


命令文は実行しないのであれば



次のプログラムのように


#include <stdio.h>

int main(void){

int a;


for(a=1;a<8;a++){

if(1)continue;

printf("%d回目のご飯はマスです\n",a);

}


return 0;

}


      最初からif(1)continue;と



if() の()の中の論理式が🌞真の値1🌞をもっていたらどのように


プログラムは実行されるのでしょうか?




このプログラムの場合 


a=1回目の繰り返しのとき


if(1)continue;

printf("%d回目のご飯はマスです\n",a);


となり


if(1)continue;の働きにより

printf("%d回目のご飯はマスです\n",a);は実行されず


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

1回目のご飯はマスです

は表示されません。


同様に

a=2回目から

a=7回目の

printf("%d回目のご飯はマスです\n",a);も実行されず


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

何も表示されません。


ですので プログラムの実行結果は


続行するには何かキーを押してください_


以外は


何も表示されません。


ぶーにゃん「マ、マッス~~~」


では,では😊


次のプログラムのように


#include <stdio.h>

int main(void){

int a;


for(a=1;;a++){

if(1)continue;

printf("%d回目のご飯はマスです\n",a);

}

return 0;

}

for(a=1;a<8;a++)の

条件式a<8を取り除いて

for(a=1;;a++)とし


無限に

if(1)continue;

printf("%d回目のご飯はマスです\n",a);


を繰り返すプログラムを実行したら


どのような結果が表示されるでしょうか?


それでは・・・・


プログラムの実行っ」



てんC


「実行結果は・・・





_(アンダーバー)以外は何も表示されません


続行するには何かキーを押してください_


も表示されません。


これは


for{}文のブロック{}内の命令文


a=1回目の繰り返しのとき


if(1)continue;

printf("%d回目のご飯はマスです\n",a);


が実行されるのですが


if(1)continue;の働きにより

printf("%d回目のご飯はマスです\n",a);は実行されず


a=2回目の命令文の実行にうつります。


a=2回目以降も

printf("%d回目のご飯はマスです\n",a);は実行されず


次回の命令文の実行にうつります。


そう、つまり


if(1)continue;文により


ずっと その回の命令文の実行を飛ばし


次回の命令文を実行しようとするだけで


コマンドプロンプト画面には何も表示されません。


この繰り返しが無限に実行され続けるので


続行するには何かキーを押してください


を表示する段階までたどりつけず


アンダーバーだけが表示されているのです」


🍊🍊🍊


実はこの時コンピュータはプログラムを終了することができず


プログラムを実行し続けています


アンダーバーが表示されているので


プログラムが終了したと思ってしまいますね。


プログラムが終了したと思い


新たにもう1つ別のプログラムを実行すると


(Visual Studioの場合)

エラー LNK1168 ファイル c:\users\solarplexuss\source\repos\Project11\Debug\Project11.exe を開いて書き込むことができません。


のように表示されます。


Visual Studioでは1度に1つのプログラムしか実行できないため


2つのプログラムを実行しようとすると


このようなビルドエラー表示がでてきます。


ですので


別のプログラムを実行するには


いったんアンダーバーが表示されているコマンドプロンプト画面を


消して


今実行しているログラムの実行を終了させる必要があります。


🍊🍊🍊



ぶーにゃん


「マスご飯ちゃんはでてこないのかにゃ」


てんC「でてきませんね。(^^)


また元の最初のプログラムに

👇

#include <stdio.h>

int main(void){

int a;


for(a=1;a<8;a++){

if(a==5)continue;

printf("%d回目のご飯はマスです\n",a);

}

printf("・・・・・・・・・(^^)\n");

printf("にゃ、にゃお~~~ん(^^)\n");

printf("お食事に・・・マス大好物にゃん\n");

printf("いりこもありますよ\n");

return 0;

}


かえってみましょう。


このとき

if(a==5) continue;文の代わりにif(a==5) break;文を


代入すると


#include <stdio.h>


int main(void){


int a;


for(a=1;a<8;a++){

if(a==5) break;

printf("%d回目のご飯はマスです\n",a);

}



printf("・・・・・・・・・(^^)\n");

printf("にゃ、にゃお~~~ん(^^)\n");

printf("お食事に・・・マス大好物にゃん\n");

printf("いりこもありますよ\n");


return 0;


}


プログラムの実行結果は


1回目のご飯はマスです

2回目のご飯はマスです

3回目のご飯はマスです

4回目のご飯はマスです

・・・・・・・・・(^^)

にゃ、にゃお~~~ん(^^)

お食事に・・・マス大好物にゃん

いりこもありますよ


となります


a=5回目のとき


if(a==5) break;



break;



実行されることになります


すると


for{}文のブロック{}内の命令文の繰り返し実行は


終了することになります



a=5回目以降のfor{}文のブロック{}内の命令文の繰り返しは実行されず


a=4回目までの命令文の実行で


for文をぬけて


次の命令文

printf("・・・・・・・・・(^^)\n");

printf("にゃ、にゃお~~~ん(^^)\n");

printf("お食事に・・・マス大好物にゃん\n");

printf("いりこもありますよ\n");

が実行されていきます。


さあ


ぶーにゃんさん マスごはん 召し上がれ いりこもありますよ」


ぶーにゃん 「にゃ、にゃお~~~ん😝」





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

作者を応援しよう!

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

応援したユーザー

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

新規登録で充実の読書を

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

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

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