プログラミングⅠ・講義メモ

・p.12「変数と宣言」から

p.12 変数と宣言

・プログラム中に記述した値を定数やリテラルという。
・変数とはバリアブル(変更可能な)の意味で、記憶領域を確保して名前を付けたもの
・よって、データを格納する容器のイメージになる
・C言語では変数の利用ルールとして事前の準備が必須で、これを宣言という
・C言語では宣言において、変数領域の大きさと特性を決めるための「型」の指定が必要
・最もよく使う型が「int」で整数用の意味。
 ※ C言語では「int」の大きさの定義は自由(処理系依存)
・宣言の書式: 型 変数名; //型に合わせた領域を確保して変数名で利用可能に
 例: int age; //int型の領域を確保してageで利用可能に
・変数にデータを格納することを代入といい、代入するデータを値という
・代入の書式: 変数名 = 値; //本来は「変数←値」だが「=」で示す

p.13 list0108.cpp

/*
    p.13 list0108 二つの変数に整数値を代入して表示
*/
#include <stdio.h>
int main(void)
{
    int x, y; //2つのint型変数の宣言
    x = 57; //int型変数への整数値の代入
    y = x + 12; //int型変数への整数計算結果の代入
    printf("xの値は%dです。\n", x); //変数xの値を埋め込んで表示(改行)
    printf("yの値は%dです。\n", y); //変数yの値を埋め込んで表示(改行)
    return 0;
}

p.13 変数と宣言(続き)

・複数の同じ型の変数はコンマつなぎでまとめて宣言できる
 例: int x, y, z; //3つのint型変数の宣言

p.13 代入

・代入の「=」記号の左側(左辺)は基本的に変数のみ
・右側(右辺)は値または式
・よって、右辺に「x + 12」として「y = x + 12;」と記述すると
 ① 変数xの値を求める
 ② ①に12を加算した値を求める
 ③ ②を変数yに格納する
・なお、変数1個だけでも式になるので「y = x;」ともできる
※ 代入により元の値は上書きされる

p.14 初期化

・変数の宣言時では値は基本的に不定であり、誤って表示するとゴミが出るかエラーになる(処理系依存)
※ VS(VC++)では、List1-9はエラーになり実行できない

p.14 初期化を伴う宣言

・変数を宣言したら最初の値の代入をすることが多いので、まとめて行える
・これを初期化を伴う宣言、または、単純に初期化といい、代入される値を初期値という
・初期値は式で与えても良い
・初期化の書式: 型 変数名 = 初期値または式;
・例: int x = 57; int y = x + 12;

p.14 list0110.cpp

/*
    p.14 list0110 二つの変数を初期化して表示
*/
#include <stdio.h>
int main(void)
{
    int x = 57; //int型変数を整数値で初期化
    int y = x + 12; //int型変数を整数計算結果で初期化
    printf("xの値は%dです。\n", x); //変数xの値を埋め込んで表示(改行)
    printf("yの値は%dです。\n", y); //変数yの値を埋め込んで表示(改行)
    return 0;
}

p.15 初期化を伴う宣言(つづき)

・複数の変数の宣言と同様に、複数の変数の初期化も可能
 例: int a = 5, b = 7;
・なお、複数の変数の一部の初期化も可能
 例: int a = 5, b; //変数aの初期化、変数bの宣言

アレンジ演習:p.14 list0110.cpp

・2変数の初期化を1行でできるかどうか試そう

作成例

/*
    アレンジ演習:p.14 list0110 二つの変数を初期化して表示
*/
#include <stdio.h>
int main(void)
{
    int x = 57, y = x + 12; //int型の2変数を初期化
    printf("xの値は%dです。\n", x); //変数xの値を埋め込んで表示(改行)
    printf("yの値は%dです。\n", y); //変数yの値を埋め込んで表示(改行)
    return 0;
}

自由参加課題 free15.cpp

・「アレンジ演習:p.14 list0110.cpp」をもう1行減らそう

p.15 演習1-4 ex0104.cpp

・変数名などは自由
・list0110.cppまたは、そのアレンジ演習のソースを用いると良い

作成例

/*
    p.15 演習1-4
*/
#include <stdio.h>
int main(void)
{
    int x = 3.14, y = 5.7; //int型の2変数を実数値で初期化
    printf("xの値は%dです。\n", x); //変数xの値を埋め込んで表示(改行)
    printf("yの値は%dです。\n", y); //変数yの値を埋め込んで表示(改行)
    return 0;
}

自由参加課題 free15b.cpp

・int型の2変数を実数値で初期化すると、小数点以下は切り捨てになってしまう
・これを四捨五入にするにはどうすれば良いか?

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です