コンピューターに計算をさせる場合、数値や計算結果を何らかの形で保存しておく必要があります。
C言語では、変数を使ってデータを保存することができます。
この記事で、変数の使い方を学びましょう。
変数の概要
変数は、値を保存しておくことができます。
以下がプログラムの例です。
#include<stdio.h>
main{
//変数aを宣言して、1を代入
int a = 1;
//変数bを宣言して、5.0を代入
float b = 5.0;
//変数の内容を表示
printf("a=%d, b=%f", a, b);
}
次の段落で、変数宣言のルールについて、見ていきましょう。
変数の宣言
よく使われる書き方
- 変数の名前しか決まっていない場合
データ型 変数名;
- 変数の初期値が決まっている場合
データ型 変数名 = 値;
- 同じデータ型の変数を、同時に2つ宣言する場合
データ型 変数名1, 変数名2;
使えるデータ型とデータ型の仕様
データ型 | 大きさ | 数値範囲 | データ型名 |
char | 1バイト | -128~127 | 文字型 |
int | 4バイト | -2,147,483,648~2,147,483,647 | 整数型 |
float | 4バイト | 1.2×10-38~3.4×1038 | 実数型 |
double | 8バイト | 2.2×10-308~1.7×10308 | 倍精度実数型 |
宣言例
整数型変数aを初期値0で宣言する
↓
int a = 0;
仕様についての詳しい内容は、この記事が参考になります。
【C言語/C++】データ型のサイズ・範囲の一覧【32bit/64bit環境】
32bit/64bit環境におけるデータ型の範囲とサイズ(バイト単位)とビット幅の一覧表です。 一般的な32/64bit環境であ・・・
変数の命名ルール
- 変数名に使えるのは、半角英数字とアンダーバー(_)のみ
- 変数名の先頭は、英文字かアンダーバーで始めます。
変数名の先頭に、数字は使えません - 32文字以内
- 予約語は使えません
予約語の一覧を下の表に書いておきます。
auto | break | case | char |
const | continue | default | do |
double | else | enum | extern |
float | for | goto | if |
int | long | register | return |
short | signed | sizeof | static |
struct | switch | typedef | union |
unsigned | void | volatile | while |
変数でできる演算の例
演算記号 | 意味 | 例 |
= | 右の値を、左の変数に保存する。 =の記号を使った値を保存する操作を、 代入と呼ぶ。 | 変数aに5を代入a=5 |
+ | 値を足し合わせる。 文字列の場合は、つなげることができる。 | 変数aと変数bの和を変数sumに代入sum=a+b |
– | 値を引く。 | 変数aと変数bの差を変数diffに代入diff=a-b |
* | 値を掛け合わせる。 | 変数aと変数bの積を変数prodに代入prod=a*b |
/ | 値を割る。 整数で割ると、小数点以下は四捨五入される。 | 変数aを変数bで割った商を変数quotに代入quot=a/b |
% | 余りを求める。 | 変数aを変数bで割った余りを変数excに代入exc=a%b |
() | かっこの中を優先して計算する。 数学と違い、中かっこ({})や大かっこ([])は使わない。 | 変数aと変数bの平均を変数avgに代入avg=(a+b)/2 |
演習
前回のPart3の演習で、下の表を作ったと思います。
アイス | ジュース | クッキー | |
タロウ | 2 | 10 | 2 |
ハナコ | 3 | 0 | 0 |
タケシ | 1 | 5 | 1 |
この表にもう一列追加して、タロウ・ハナコ・タケシがそれぞれ合計で何個のお菓子を買ったか表示してみましょう。
アイス | ジュース | クッキー | 合計 | |
タロウ | 2 | 10 | 2 | ? |
ハナコ | 3 | 0 | 0 | ? |
タケシ | 1 | 5 | 1 | ? |
ヒント:
変数名をtaro_iceのように名付ければ、わかりやすくなるかも…?
Part1はこちら
このシリーズの前回の記事はこちら
コメント