演算子に関しての記事です。
計算で使う演算子のほかに、比較演算子・論理演算子についても解説しています。
計算で使う演算子
プログラミングで計算をする際に用いる【+】や【-】などのことを演算子と言います。
プログラミングをするうえでは、必須の知識なのでマスターしましょう。
演算子 | 役割 | 使い方 |
---|---|---|
+ | +【足す】 | a = b + c |
- | -【引く】 | a = b - c |
* | ×【掛ける】 | a = b * c |
/ | ÷【割る】 | a = b / c |
% | ・・・【余り】 | a = b % c |
余りは整数型のみ使用可能です。
コーディング例①
#include <stdio.h> // printf()を使用するために必要
int main()
{
printf("3+3は%dです。\n", 3 + 3);
printf("3-3は%dです。\n", 3 - 3);
printf("3×3は%dです。\n", 3 * 3);
printf("3÷3は%dです。\n", 3 / 3);
printf("3÷2の余りは%dです。\n", 3 % 2);
return 0;
}
出力
3+3は6です。
3-3は0です。
3×3は9です。
3÷3は1です。
3÷2の余りは1です。
代入演算子
【=】や【+=】のことを代入演算子と言います。
【+=】などを利用すると、コードの記述量を削減することが出来ます。
演算子 | 使い方 | 同様の意味 |
---|---|---|
= | a = b | - |
+= | a += b | a = a + b |
-= | a -= b | a = a - b |
*= | a *= b | a = a * b |
/= | a /= b | a = a / b |
%= | a %= b | a = a % b |
コーディング例①
#include <stdio.h> // printf()を使用するために必要
int main()
{
int a = 10, b = 40;
a = a + 10;
b += 10;
printf("%d\n", a);
printf("%d\n", b);
return 0;
}
出力
20
50
インクリメント・デクリメント演算子
【++】をインクリメント演算子、【--】をデクリメント演算子と言います。
演算子 | 使い方 | 同様の意味 |
---|---|---|
++【インクリメント】 | a++ or ++a | 変数の値を1増やす |
--【デクリメント】 | a-- or --a | 変数の値を1減らす |
コーディング例①
#include <stdio.h> // printf()を使用するために必要
int main()
{
int a = 10;
printf("%d\n", a);
a++;
printf("%d\n", a);
a--;
printf("%d\n", a);
return 0;
}
出力
10
11
10
前置と後置
++a【--a】を前置、a++【a--】を後置と言います。
これらの書き方によって演算を行うタイミングが異なってきます。
前置は、変数の参照より先に演算が行われます。
後置は、変数の参照より後に演算が行われます。
コーディング例②
#include <stdio.h> // printf()を使用するために必要
int main()
{
int a = 5, b = 5;
printf("%d\n", ++a);
printf("%d\n", b++);
return 0;
}
出力
6
5
比較演算子
値を比較する際に使う演算子を比較演算子と言います。
条件式を作る際には、その結果により真・偽を判定し、処理の分岐を行います。
演算子 | 役割 | 使い方 |
---|---|---|
== | =【等しい】 | a == b |
< | <【小なり】 | a < b |
> | >【大なり】 | a > b |
<= | ≦【以下】 | a <= b |
>= | ≧【以上】 | a >= b |
!= | ≠【等しくない】 | a != b |
真偽の値は、以下のように設定されます。
- true:1
- false:0
コーディング例①
#include <stdio.h> // printf()を使用するために必要
int main()
{
int a = 5, b = 10;
printf("a = %d b = %d\n", a, b);
printf("a == b ⇒ %d\n", a == b);
printf("a < b ⇒ %d\n", a < b);
printf("a <= b ⇒ %d\n", a <= b);
printf("a > b ⇒ %d\n", a > b);
printf("a >= b ⇒ %d\n", a >= b);
printf("a != b ⇒ %d\n", a != b);
return 0;
}
出力
a = 5 b = 10
a == b ⇒ 0
a < b ⇒ 1
a <= b ⇒ 1
a > b ⇒ 0
a >= b ⇒ 0
a != b ⇒ 1
論理演算子
【0 <= a <= 10】のような少し複雑な条件を作りたい場合は、論理演算子を使います。
演算子 | 役割 | 使い方 |
---|---|---|
&& | かつ | (a >= 10) && (a < 20) |
|| | または | (a == 10) || (a == 20) |
! | ~ではない | !(a == 10) |
条件付き代入
条件によって代入する値を変更したい場合は、以下のように記述します。
x = (条件) ? a : b;
a:条件が真の場合に代入
b:条件が偽の場合に代入
コーディング例①
#include <stdio.h> // printf()を使用するために必要
int main()
{
int a = 10, b = 20;
int c;
c = (0 <= a && a <= 10) ? 1 : 0;
printf("%d\n", c);
c = (0 <= b && b <= 10) ? 1 : 0;
printf("%d\n", c);
return 0;
}
出力
1
0
演算子の優先順位
演算子には優先順位があります。
全ての優先順位を覚えるのは大変なので、基本的には以下のルールを覚えておけば良いかと思います。
- 基本的に、左から右へと計算する
- 四則計算の順番に従う
- ()でくくられた箇所を優先して計算する
¥8,990 (2023/05/01 09:58時点 | Amazon調べ)
ポチップ
¥22,999 (2023/05/01 10:00時点 | Amazon調べ)
ポチップ