こんにちは、硲勇司です。
1回・2回と、C言語解説をしました。
前回は理解出来ましたか?
もともと、C言語を触ったりしていないと、理解がしにくいと思いますが、
頑張って理解してください前回は、文字列の表示や、printf()少し遊んだりしてみましたが、今回は
基本的なループ分や条件式を解説したいと思います。
まず、こちらを入力してください。
for(int i=0; i<3 ; i++ ){
printf("%d\n",i);
}
実行結果
0
1
2
この場合、どうでしょうか。forを使ったループ文をfor文といい、
プログラムでいう、基本中の基本ですね(笑)
forの右の( )を読み解いていきましょう。
int i = 0 は、変数の宣言でしたね。つまり、
iという箱を用意し、それに0を入れた
と解釈してください。ここでいう条件は、i<3 で、
iが、3より小さい限り繰り返す
と、理解してください。
そして、i++はインクリメント演算子といい一つずつ増やすという事です。
つまり、i++ で、1ずつ増えていくごとに、printf()で表示をしています。
for文を使うときは、()に条件などを書き、繰り返すものを
{ }で囲みます。
ついでに、\nは改行を意味します。
printf()内の、文字列に入れると、改行されます。
今度は、これを実行してください。
int x = 0;
for(int i=0 ; i < 3 ; i++){
x += 1;
}
printf("%d",x)
x += 1は、xに対して、1を足しているという事です。
こんな書き方もあるんですね!
プラスマークをマイナスにすれば、x -= 2
これは、xから2を引くという事になります。
さて、上記の文を理解してみましょう。
x を宣言して、0に初期化し、for文でそれを、(i < 3)つまり、
3回、1を足しているという事になります。
理解できましたか?
理解するには、プログラムを書いて実行したり、それをいじるのが一番ですよ!
for文以外にも、while文というものもあります。
for文の場合は、引数として第三引数まで入力しましたが、
while文は条件分だけで作ることが出来ます。
個人的には、使い分けるとしたら、
簡単なループを実装したい場合は、for文
的な感じで、人それぞれの好みだと思います。
while文を簡単に解説してみましょう。
int x = 0;
while(x < 3){
printf("%d",x);
x++;
}
この場合、while()の第一引数で、条件を指定しています。
x は最初0のため、whileを繰り返すたび、
x++(インクリメント演算子)で1づつ増えています。
x が 3未満の限り、whileの中を繰り返し
それを、ただprintf()で表示するという簡単なプログラムです。
int x = 0;
while(x <= 3){
printf("%d",x);
x++;
}
先ほどのwhile文の条件式を少し、変えてみました。
これは、x<=3 となっていますが、3を含んで、繰り返すかどうか
つまり、未満か以下なのかを区別します。
for文とwhile文の使い分けは、プログラミングをやるうちに
直に、分かっていくと思います。
自分自身明確な使い分けはないですが、
for文のほうが、引数の()を見たときに、一目で初期値
条件・変数がどのくらいづつ増えているのか、
などと、それぞれ長所があります
色々とループ文を書いて違いや、使い方を覚えてください。
初めての人は、理解に苦しむと思いますが、
自分なりに、上記のプリグラムを実行して、少し変えて実行してみたりと
サンプルプログラムをいじることで、理解が深まると思います。
色々と、試してみてください。