【課題2−1 制御構造と関係演算子】
<制御構造>
C言語の3つの基本制御構造
順次構造:上から下への順を追った流れ
選択構造:どちらか一方の処理を選ぶ
反復構造:同じ処理を繰り返す
<構造化プログラミング>
上記の3つの基本制御構造のみですべてのアルゴリムを表現する.個々の処理がブロック化されているので,わかりやすいプログラムになる.無条件ジャンプ(goto文)はプログラムの構造をわかりにくくするので極力避ける.
<順次構造>
現れた順番に処理を実行する.
<選択構造>
条件によって処理が分岐する形式.if文,switch文.
<反復構造>
処理を繰り返し実行する形式.while文,for文,do~while文.
<C言語のその他の制御構造>
break(反復脱出),continue(反復スキップ),return(呼び出し元への復帰).goto文もある.
<真と偽>
=や>=など,関係演算子は,比較結果が正しいときには1,正しくないときには0を返す.C言語では0以外を真,0を偽と評価する.
<関係演算子>
演算子 |
意味 |
使用例 |
> |
より大きい |
if (a > b) |
>= |
より大きいか等しい |
if (a >=
b) |
< |
より小さい |
if (a < b) |
<= |
より小さいか等しい |
if (a <=
b) |
== |
等しい |
if (a == b) |
!= |
等しくない |
if (a != b) |
<論理演算子>
否定や(NOT),複数の条件を組み合わせる(AND, OR).
演算子 |
意味 |
使用例 |
&& |
論理積(AND) |
if (a>0
&& b>0) |
|| |
論理和(OR) |
if (a>0 ||
b>0) |
! |
否定(NOT) |
if (!a) |
C言語では0以外は真,0は偽なので,if (a!=0)とif (a),if
(a==0)とif (!a)は同じ結果になる.