C言語 PR

【C言語】値を比較する方法【比較演算と論理演算】

記事内に商品プロモーションを含む場合があります

この記事では、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文などで条件を指定する際によく使われるのでしっかり覚えておきましょう❗️

【C言語】if文を使った条件分岐の方法を解説この記事では、C言語で if文 を使った条件分岐の方法について解説します。if文とは、制御構文の1つで、条件式によって処理を分岐させることができます。それでは、if文 を使った条件分岐について見ていきましょう!...

それでは今回の内容はここまでです。ではまたどこかで〜( ・∀・)ノ