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

p.120 配列の初期化

・変数と同様に、配列にも宣言と同時に初期値を与える初期化が可能
・書式: データ型 配列名[要素数] = {値,…};
・例: double size[4] = {1.25, 2.26, 0.31, 3.14}; //size[0]には1.25が代入される(以下同様)
・要素数を省略すると、初期値の数が自動的に用いられる
・例: double size[] = {1.25, 2.26, 0.31, 3.14}; //配列sizeの要素数は4になる
・要素数を記述して、初期値の数が足りない場合、残りは0になる
・例: double size[3] = {1.25}; //size[0]には1.25が、size[1]とsize[2]は0が代入される
・よって、全要素を0で初期化したい場合は、{0}を指定すると良い
・例: double size[3] = {0}; //size[0]、size[1]、size[2]には0が代入される
・{値,…}を宣言済の配列に代入することはできない(初期化専用)

アレンジ演習:p.121 list0506.cpp

・省略部分を完成しよう

作成例

//アレンジ演習:p.121 list0506.cpp
#include <stdio.h>
int main(void)
{
    int a[4] = {1868, 1912, 1926, 1989}; //明治・大正・昭和・平成元年の西暦
    int b[] = { 1, 2, 3 }; //要素数は3になる
    int c[5] = { 1, 2 }; //値が足りない要素は0になる
    int d[5] = { 0 }; //全要素が0になる
    for (int i = 0; i < 4; i++) { //配列aの添字の範囲(0~3)で繰返す
        printf("a[%d] = %d\n", i, a[i]); //添字と要素値を表示
    }
    for (int i = 0; i < 3; i++) { //配列bの添字の範囲(0~2)で繰返す
        printf("b[%d] = %d\n", i, b[i]); //添字と要素値を表示
    }
    for (int i = 0; i < 5; i++) { //配列cの添字の範囲(0~4)で繰返す
        printf("c[%d] = %d\n", i, c[i]); //添字と要素値を表示
    }
    for (int i = 0; i < 5; i++) { //配列dの添字の範囲(0~4)で繰返す
        printf("d[%d] = %d\n", i, d[i]); //添字と要素値を表示
    }
    return 0;
}

コメントを残す

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