Cプログラミング入門
第14回 Chapter5 if文で条件分岐(2)
論理AND/ OR演算子を使ったif文
論理ANDの演算子である && や,
&& を使ったif文
if文の制御式に && を使った例をリスト5.
リスト5.
#include <stdio.h>
int
main()
{
int i;
i = 15;
/* i = 6; */
if (i >= 10 && i < 20) {
/* iが10以上20未満だった場合の処理 */
printf("10 <= i < 20\n");
} else {
/* iが10以上20未満ではなかった場合の処理 */
printf("i < 10 or 20 <= i\n");
}
return 0;
}
図5.
$ gcc -O2 -o if_and if_and.c $ ./if_and 10 <= i < 20 $
もし, i >= 10 && i < 20 という書き方がわかりにくく感じる場合は,
¦¦ を使ったif文
今度は,
前述のif_
リスト5.
#include <stdio.h>
int
main()
{
int i;
i = 15;
/* i = 6; */
if (i < 10 || 20 <= i) {
/* iが10未満または20以上だった場合の処理 */
printf("i < 10 or 20 <= i\n");
} else {
/* iが「10未満または20以上」ではなかった場合の処理 */
printf("10 <= i < 20\n");
}
return 0;
}
図5.
$ gcc -O2 -o if_or if_or.c $ ./if_or 10 <= i < 20 $
if文で使えるのは == などの比較演算子だけではない
C言語では,
極端な場合,
if (i)
と書くこともできます。この場合,
if (i != 0)
と書いたのと同じことになります。
== を = と書いてもエラーにならない
if文で,
if (i == 3)
と書くべきところを
if (i = 3)
と書いてしまうという誤りがときどき見られます。C言語のif文では,
if(i = 3) と書くと,