本記事の構成および論理分析にはAI(人工知能)を使用しています。情報の正確性は、システム管理者(UNIXユーザー)による手動検証済みです。
第3回 | 変数と整数を理解する:C言語で値を保存して表示する| UNIX Cafe

はじめてのC言語 | 第3回
はじめに
前回は、C言語の最小構成として main 関数と printf を確認しました。
今回は、値を保存するための「変数」を扱います。
この回の目的は次の5点です。
- 変数の役割を理解する
int型の意味を知る- 代入の書き方を覚える
printfで整数を表示できるようになる- 複数の変数を使って簡単なステータス表示を作る
変数って何?
変数は、値を入れておくための名前付きの保存場所です。
たとえば、年齢、個数、点数のような数値を一時的に保持したいときに使います。
C言語では、変数を使う前に「どの種類の値を入れるか」を宣言する必要があります。
int 型って何?
int は整数を表す型です。
小数を含まない数値を扱うときに使います。
例:
0
1
25
10一方で、3.14 のような小数を正確に扱うには、int ではなく別の型を使います。
最初のサンプルコード
ソースコード
number.c という名前で、次の内容を保存します。
#include <stdio.h>
int main(void) {
int age = 20;
printf("%d\n", age);
return 0;
}実行手順
1. 作業ディレクトリに移動する
cd ~/Desktop2. ソースファイルを作成する
number.c を作成し、コードを保存します。
3. コンパイルする
clang number.c -o number4. 実行する
./number実行結果:
20コードの読み方
int age = 20;
これは、整数型の変数 age を宣言し、20 を代入しています。
要素ごとに分けると次の意味になります。
int : 整数を扱うための型
age : 変数名
= : 右側の値を左側に代入する
20 : 保存する値printf("%d\n", age);
変数 age の値を表示しています。
%d: 整数を表示するための書式指定子\n: 改行age: 実際に表示する変数
変数に入っている整数の値を表示するときは、%d のような書式指定子を使います。
変数を使う理由
変数を使うと、同じ値を何度も使えます。
また、値を後から変更することもできます。
例:
#include <stdio.h>
int main(void) {
int count = 5;
printf("%d\n", count);
printf("%d\n", count);
return 0;
}実行結果:
5
5値を変更する
変数に入れた値は、後から変更できます。
#include <stdio.h>
int main(void) {
int score = 10;
score = 30;
printf("%d\n", score);
return 0;
}実行結果:
30最初に 10 を入れていますが、その後 30 を代入しているため、最後に表示されるのは 30 になります。
初心者が混乱しやすい点
= は「等しい」ではなく「代入」
数学では = は左右が等しいことを表します。
C言語で int age = 20; と書いた場合は、「age に 20 を入れる」という意味です。
この違いは早い段階で意識しておく必要があります。
変数は先に宣言する必要がある
C言語では、変数名だけをいきなり使うことはできません。
正しい例:
int age = 20;
printf("%d\n", age);誤った例:
printf("%d\n", age);この場合、age が何の変数なのか宣言されていないため、エラーになります。
%d を忘れない
整数を表示するときは、printf の文字列の中に %d を書きます。
正しい例:
printf("%d\n", age);%d は、「ここに整数を表示する」という目印です。
変数名の付け方
変数名には、いくつかの決まりがあります。
- 英字、数字、
_が使える - 先頭を数字にはできない
- 大文字と小文字は区別される
intやreturnのような予約語は使えない
使える例:
int age = 20;
int score1 = 80;
int my_score = 95;使えない例:
int 1score;
int my-score;また、意味が分かる名前を付けることが重要です。
xよりageaよりscore
このように、役割が分かる名前のほうが読みやすくなります。
複数の変数を使う例
#include <stdio.h>
int main(void) {
int price = 120;
int quantity = 3;
printf("%d\n", price);
printf("%d\n", quantity);
return 0;
}実行結果:
120
3それぞれ別の値を保存できることが分かります。
変数で小さなゲームを作る
変数を使うと、ゲームのような表示も作れます。
ここでは、冒険者のステータスを表示してみます。
#include <stdio.h>
int main(void) {
int hp = 100;
int attack = 25;
int gold = 10;
printf("冒険者のステータス\n");
printf("HP: %d\n", hp);
printf("攻撃力: %d\n", attack);
printf("所持金: %d\n", gold);
printf("宿屋に泊まりました。\n");
hp = 120;
gold = 5;
printf("HP: %d\n", hp);
printf("所持金: %d\n", gold);
return 0;
}実行結果:
冒険者のステータス
HP: 100
攻撃力: 25
所持金: 10
宿屋に泊まりました。
HP: 120
所持金: 5hp、attack、gold にそれぞれ別の値を保存しています。
途中で hp と gold に新しい値を代入しているため、後半の表示が変わります。
よくあるエラー
use of undeclared identifier
例:
printf("%d\n", age);原因: 宣言していない変数を使っています。
対処: int 変数名; または int 変数名 = 値; の形で先に宣言します。
expected ';'
原因: セミコロンが抜けています。
対処: 行末を確認します。
例:
int age = 20%d と変数の型が合っていない
今回は int 型だけを扱っているので %d を使います。
今後、小数や文字を扱う場合は別の書式指定子が必要です。
たとえば、小数を表示するときは %f、文字を表示するときは %c を使います。
練習問題
次のコードを書いて、42 が表示されることを確認してください。
#include <stdio.h>
int main(void) {
int number = 42;
printf("%d\n", number);
return 0;
}実行手順:
clang number.c -o number
./number実行結果:
42まとめ
今回のポイントは次のとおりです。
- 変数は、値を保存するための名前付きの場所である
intは整数を扱うための型である=を使って値を代入できるprintfと%dを使うと整数を表示できる- 複数の変数を使うと、ゲームのステータスのような表示も作れる
- 変数名、型、書き方を正確に書くことでミスを防げる
この回では、C言語で整数を変数に保存し、それを表示する流れを確認しました。
複数の変数を使うと、HPや攻撃力、所持金のような情報も分けて保存できます。変数と型の理解は、今後の条件分岐、繰り返し、関数の学習でも前提になります。
次回予告
次回は、計算と演算子に進みます。+、-、*、/ を使いながら、C言語で数値を計算する仕組みをやさしく確認していきましょう。
復習してみよう
復習したい方は、こちらもあわせてご覧ください。













