この記事では、C言語で値を比較する方法を解説します。
プログラミングをしているとある値が何かしらの値より大きいのか小さいのかはたまた同等なのかを知りたい場合があります。
そんな時は「比較演算子」を使って右辺と左辺の値を比較します。
それでは、比較演算子の使い方を見ていきましょう!
比較演算子とは?
比較演算子とは、左辺と右辺の値を比較するための演算子です。
if文やwhile文の条件式として使うことができ、「同等」や「~以上」という条件を指定することができます。
ではでは、具体的にどのような比較演算子が用意されているか見ていきましょう!
比較演算子一覧
以下のような比較演算子が用意されています。
| 演算子 | 意味 |
|---|---|
| x == y | x と y が等しいかどうか |
| x != y | x と y が等しくないかどうか |
| x < y | x が y より小さいかどうか |
| x > y | x が y より大きいかどうか |
| x <= y | x が y 以下かどうか |
| x >= y | x が y 以上かどうか |
値を変更して挙動を確認してみてください。より理解が深まります。
#include <stdio.h> int main(void) { int x = 1; int y = 0; if(x == y) printf("xはyと同じ\n"); if(x != y) printf("xはyと異なる\n"); if(x < y) printf("xはyより小さいです\n"); if(x > y) printf("xはyより大きいです\n"); if(x <= y) printf("xはy以下です\n"); if(x >= y) printf("xはy以上です\n"); }
実行結果
xはyと異なる xはyより大きいです xはy以上です
比較演算が返す値
比較演算は、真の場合「1」、偽の場合「0」が返されます。
#include <stdio.h> int main() { int x = 0; printf("真: %d\n", x == 0); printf("偽: %d\n", x != 0); }
実行結果
真: 1 偽: 0
論理演算
論理演算とは、「かつ」や「または」を使って比較演算を組み合わせる演算です。
例えば、「20歳以上かつ65歳以下」や「20歳以下または65歳以上」というように、条件を「かつ」、「または」でつなぐことができます。
かつ:&&
比較演算を&&で繋ぐことで繋いだ全ての比較演算が真でなければ真として判定されません。
条件式1 && 条件式2
以下の例では、20歳以上65歳以下のみが真として判定されます。
#include <stdio.h> int main(void) { int age = 35; if((age >= 20) && (age <= 65)){ printf("20歳以上、かつ65歳以下\n"); } }
実行結果
20歳以上の男性です
または:||
||で繋ぐことで繋いだ比較演算の中で1つでも真があれば真として判定されます。
条件式1 || 条件式2
以下の例では、20歳以上または男性ならば真として判定されます。
#include <stdio.h> int main(void) { int age = 18; if((age <= 20) || (age >= 65)){ printf("20歳以下、または65歳以上\n"); } }
実行結果
20歳以下、または65歳以上
まとめ
この記事では、比較演算と論理演算の方法を解説しました。
if文などで条件を指定する際によく使われるのでしっかり覚えておきましょう❗️
それでは今回の内容はここまでです。ではまたどこかで〜( ・∀・)ノ


