C言語の関係演算子とは?6種類の演算子の使い方をサンプルコード付きで解説
関係演算子とは
関係演算子(Relational Operators)は、2つの式や値を比較し、その大小関係や等価性を判定するために使用される演算子です。if文やwhile文などの条件分岐・繰り返し処理において、プログラムの流れを制御するための基礎となる非常に重要な要素です。
C言語では、比較結果が成立する場合は「真」として整数の 1 を返し、成立しない場合は「偽」として 0 を返します。
関係演算子の一覧
C言語で使用できる関係演算子は以下の6種類です。ここでは、変数 a = 10、b = 20 の場合の評価結果を示します。
| 演算子 | 意味 | 記述例 | a=10, b=20 の場合 | 出力 |
|---|---|---|---|---|
| < | より小さい(左辺が右辺未満) | a<b | 10<20 | 1 |
| <= | 以下(左辺が右辺以下) | a<=b | 10<=20 | 1 |
| > | より大きい(左辺が右辺超過) | a>b | 10>20 | 0 |
| >= | 以上(左辺が右辺以上) | a>=b | 10>=20 | 0 |
| == | 等しい | a==b | 10==20 | 0 |
| != | 等しくない | a!=b | 10!=20 | 1 |
このように、関係式の評価結果は「真(1)」または「偽(0)」のいずれかになります。
処理の手順(アルゴリズム)
関係演算子を使ったプログラムは、以下の手順で作成できます。
START
Step 1: 整数型の変数を宣言する。
Step 2: 実行時にすべての変数に値を読み込む。
Step 3: 関係演算を実行する。
i. a<b
ii. a<=b
iii. a>b
iv. a>=b
v. a==b
vi. a!=b
Step 4: 計算したすべての値を出力する。サンプルプログラム
以下は、C言語で関係演算子を使用して比較結果を画面に表示するプログラム例です。
#include<stdio.h>
main (){
int a,b;
printf("enter a,b values:\n");
scanf("%d%d",&a,&b);
printf("%d\n",a<b);
printf("%d\n",a<=b);
printf("%d\n",a>b);
printf("%d\n",b>=a);
printf("%d\n",a==b);
printf("%d\n",a!=b);
}キーボードから2つの整数を入力すると、それぞれの関係演算の結果が順番に表示されます。
実行結果
このプログラムを実行すると、以下のような出力が得られます。
enter a,b values: 120 340 1 1 0 1 0 1
入力値が a=120、b=340 の場合、「a<b」は真なので 1、「a>b」は偽なので 0、というように各行に比較結果が出力されていることが確認できます。
まとめ
関係演算子は、値同士を比較して真(1)・偽(0)を返すシンプルな仕組みですが、条件分岐やループ処理など、あらゆるプログラムの土台となる重要な概念です。6種類の演算子(<、<=、>、>=、==、!=)それぞれの動作の違いをしっかり理解しておきましょう。特に「==」(等しい)と「=」(代入)を混同しないよう注意が必要です。
-
C言語でキューに要素を挿入する方法を徹底解説!基本概念からサンプルコードまで
データ構造とは、データを体系的かつ効率的に整理・格納するための仕組みです。データ構造は、その構成方法によって大きく以下の2種類に分類できます。線形データ構造 − データが一直線上に順序立てて配置される構造です。例として、配列、構造体、スタック、キュー、連結リストなどが挙げられます。非線形データ構造 − データが階層的・網目的に配置される構造です。例として、木(ツリー)、グラフ、集合、テーブルなどが挙げられます。キュー(Queue)とはキューは線形データ構造の一つで、後端(リア/rear)から要素を挿入し、前端(フロント/front)から要素を削除するという特徴を持っています。キューにおけるデー
-
C言語の演算子と式の種類を徹底解説!算術からビット演算まで
C言語における演算子(オペレーター)とは、データに対して何らかの操作を行うための記号です。C言語の演算子は、その機能によって以下のように分類されます。算術演算子関係演算子論理演算子代入演算子インクリメント・デクリメント演算子ビット演算子条件演算子特殊演算子それぞれの演算子について、具体例とサンプルプログラムを交えながら詳しく見ていきましょう。1. 算術演算子算術演算子は、足し算や引き算などの数値計算を行うために使われます。演算子説明例a=20, b=10 の場合結果+加算(足し算)a+b20+1030-減算(引き算)a-b20-1010*乗算(掛け算)a*b20*10200/除算(割り算)a/