本記事の構成および論理分析にはAI(人工知能)を使用しています。情報の正確性は、システム管理者(UNIXユーザー)による手動検証済みです。
第4回|四則演算と演算子を学ぶ:C言語で数値を計算する

はじめてのC言語 | 第4回
はじめに
前回は、int 型の変数に整数を保存して表示しました。
今回は、C言語で数値を計算する方法を学びます。
この回の目的は次の4点です。
- 四則演算の書き方を覚える
- 演算子の意味を理解する
- 計算結果を変数に保存できるようにする
- 整数同士の割り算で起こる挙動を正確に理解する
演算子とは何か
演算子は、値に対して計算や比較を行うための記号です。
今回は、整数の計算で使う基本的な演算子を扱います。
- + : 足し算
- – : 引き算
- * : 掛け算
- / : 割り算
- % : 余り
最初のサンプルコード
ソースコード
calc.c という名前で保存します。
#include <stdio.h>
int main(void) {
int a = 10;
int b = 3;
printf("%d\n", a + b);
printf("%d\n", a - b);
printf("%d\n", a * b);
printf("%d\n", a / b);
printf("%d\n", a % b);
return 0;
}実行手順
1. 作業ディレクトリに移動する
cd ~/Desktop2. コンパイルする
clang calc.c -o calc3. 実行する
./calc実行結果:
13
7
30
3
1各演算子の意味
足し算 +
printf("%d\n", a + b);10 + 3 なので、結果は 13 です。
引き算 –
printf("%d\n", a - b);10 – 3 なので、結果は 7 です。
掛け算 *
printf("%d\n", a * b);10 * 3 なので、結果は 30 です。
割り算 /
printf("%d\n", a / b);ここは注意が必要です。
a も b も int 型なので、整数同士の割り算になります。
10 / 3 の結果は 3.333… ではなく、3 です。
小数部分は切り捨てられます。
余り %
printf("%d\n", a % b);10 ÷ 3 の余りは 1 なので、結果は 1 です。
計算結果を変数に保存する
計算結果は、そのまま表示するだけでなく、変数に保存できます。
#include <stdio.h>
int main(void) {
int price = 120;
int quantity = 4;
int total = price * quantity;
printf("%d\n", total);
return 0;
}実行結果:
480このように、式の結果を別の変数に入れておくと、後で再利用できます。
割り算で初心者がつまずきやすい点
整数同士の割り算は小数にならない
次のコードを見てください。
#include <stdio.h>
int main(void) {
int a = 5;
int b = 2;
printf("%d\n", a / b);
return 0;
}
実行結果:
25 / 2 なので 2.5 を期待しやすいですが、結果は 2 です。
これは int 型同士で計算しているためです。
この段階では、int 型の割り算は「整数の結果だけが残る」と理解しておけば十分です。
式と代入を組み合わせる
C言語では、計算式を右辺に書いて代入できます。
#include <stdio.h>
int main(void) {
int x = 8;
int y = 2;
int result = x + y * 3;
printf("%d\n", result);
return 0;
}実行結果:
14これは、先に y * 3 が計算され、その後で x + … が計算されるためです。
演算の優先順位
基本的には、普通の算数と同じように考えて構いません。
- 掛け算、割り算、余り
- 足し算、引き算
たとえば次の式:
int result = 2 + 3 * 4;この結果は 20 ではなく 14 です。
先に 3 * 4 が計算されます。
かっこで順番を明示する
不安なときは、かっこを使います。
int result = (2 + 3) * 4;この場合は、先に 2 + 3 を計算するので、結果は 20 です。
かっこを使うと、読みやすさも上がります。
よくあるエラー
expected expression
原因: 演算子の前後に必要な値がありません。
誤った例:
int x = 10 + ;対処: 演算子の左右に正しい値や変数を書く必要があります。
division by zero
次のような計算はできません。
int x = 10 / 0;0で割ることはできないため、実行時エラーや未定義動作の原因になります。
割り算をするときは、割る側の値が0でないことを確認する必要があります。
* を x と書かない
掛け算は x ではなく * を使います。
正しい例:
int total = 3 * 4;練習用コード
次のコードを書いて、結果を確認してください。
#include <stdio.h>
int main(void) {
int a = 20;
int b = 6;
printf("%d\n", a + b);
printf("%d\n", a - b);
printf("%d\n", a * b);
printf("%d\n", a / b);
printf("%d\n", a % b);
return 0;
}実行結果:
26
14
120
3
2まとめ
今回のポイントは次のとおりです。
- +、-、*、/、% を使うと整数の四則演算ができる
- 演算子を使って値同士の計算ができる
- 計算結果はそのまま printf で表示できる
- 計算結果を変数に保存して使うことができる
- 整数同士の割り算や余りの動作を理解することでミスを防げる
この回では、C言語で整数の四則演算を行う方法を確認しました。
今後は、計算した結果を条件分岐や繰り返しに使う場面が増えます。
次回予告
次回は、if 文を使った条件分岐に進みます。
「条件によって動きが変わる」という考え方を、これまで学んだ変数や演算子とつなげながら、やさしく見ていきましょう。
復習してみよう
復習したい方は、こちらもあわせてご覧ください。













