while文について
1.目的
- while文について理解する。
- while文の使い方について理解する。
目次
2.while文とは
・同じ処理を繰り返すループ処理を行う。
3.使い方
実行する処理が一つの場合
while (条件式) 実行する処理;
実行する処理が複数ある場合
while (条件式){ 実行する処理1; 実行する処理2; 実行する処理3; .... }
4.説明
・while()の部分で、()内の条件式が成り立つ(true)の時、処理を繰り返し続ける。
・よく組み込みではwhile(1){ }で使われる。while(1){は、無限ループするということ。
5.プログラムの作成(while文の動作を確認する)
#include <stdio.h> int main(void){ //変数宣言 int i=0; //ループ回数用変数 //iが5未満の時ループ while(i<2){ printf("whileループ開始:i=%d\n",i); i++; printf("whileループ終了:i=%d\n",i); //whileループを出力 } printf("処理終了"); }
結果:https://paiza.io/projects/N6WMY3b7FAiDp7tCvXfrhg?language=c
6.プログラムの説明
(1) while(i<2){
・この部分で、iの値が2未満か確認している。2未満であれば、{}内の処理を行う。
(2) {}内の処理
・printfでwhileループの開始とiの値を表示
・iの値を+1
・printfでwhileループの終了とiの値を表示
している。
これにより、whileを抜けるタイミングを確認している。
このプログラムの場合、
printfでwhileループの終了:2 でiが2となり、i<2が不成立になるため、
処理が終了する。
5.do whileの使い方
whileと同じような処理にdo whileがある。
whileとdo whileの違いについて記載する。
下記使い方で使用する。
do{ 実行する処理1; 実行する処理2; 実行する処理3; .... }while (条件式);
6.プログラムの作成(do whileとwhile文の動作の差)
#include <stdio.h> int main(void){ //変数宣言 int i=2; //ループ回数用変数 while(i<2){ printf("while実行:i=%d\n",i); //whileループを出力 }; do{ printf("do while実行:i=%d\n",i); }while(i<2); printf("処理終了"); }
結果:https://paiza.io/projects/tMvzxQLjfnBy4fkLvwAE7A?language=c
7.プログラムの説明
(1) while(i<2){
・この部分で、iの値が2未満か確認している。
・2未満であれば、{}内の処理を行う。
・この場合、i=2でi<2が不成立の為、実行されない。
(2) do{ ・・・}while(i<2);
・while(i<2)の部分で、iの値が2未満か確認している。
・この場合、一度{}内の処理が実行される。
・while(i<2)の所で、i=2の為、i<2が不成立の為、ループを抜ける。
つまり、
・do whileの場合、while(条件)が不成立でも一度は{}内の処理が実行される。
・whileのみの場合は、不成立の場合は、{}内の処理は、一度も実行されない。
関連記事
C言語:
・組み込みの為のC言語基礎知識1(printf) - Project_OKI’s diary
・C言語基礎知識2(for分で処理を繰り返す) - Project_OKI’s diary
・C言語基礎知識3(配列) - Project_OKI’s diary
・知らないと損するお金の話(ふるさと納税、確定申告とワンストップ納税どっちが得?) - Project_OKI’s diary
・C言語基礎知識6(関数) - Project_OKI’s diary
・C言語基礎知識7(構造体1) - Project_OKI’s diary
・C言語基礎知識8(enum:列挙型) - Project_OKI’s diary
・C言語基礎知識9(typedef) - Project_OKI’s diary