C言語Part4〜変数その2〜

今回も引き続き、変数について話していこうと思います。

予約語

変数の名前はアルファベットと数字であれば基本なんでも良いですが、例外もあります。それが予約語というものです。
例えば変数の名前を「int」にすることはできません。
理由はもうお分かりでしょう。
C言語において「int」はすでに意味を持った文字列であるからです。
そのためC言語に出てくる単語を変数の名前として使うことはしないように注意しましょう。

ちなみに変数の一部として使うことはできます。
例えば、「char」は使えませんが、「chara」は使えます。

変数の代入と初期化

変数に値を入れることを代入といい、変数の宣言と同時に変数に代入することを変数の初期化といいます。

 #include <stdio.h>
int main(){
    int a=100,b,c=50;
    b=30;
    return 0;
}

このように書くことで、int型変数a、変数b、変数cを宣言し、 a に 100 を代入、c に 50 を代入することができます。(その後 b に 30 を代入している。)
このとき a と c は初期化をしたことになります。

変数の値の表示

文字列を出力したいとき、

printf(“文字列”); 

とすることで“ ”(ダブルクォーテーション)内の文字列を表示することができました。この文字列中に「%*」(*は d,f,c など)があるとその部分に“”の後ろにある文字や数値を埋め込むことができます。
%d や%f などのことを書式指定フィールドといいます。
書式指定フィールドは次のような種類があります。

画像1

分かりやすいように具体例を見てみましょう。

変数の値の表示の具体例

具体例①

 #include <stdio.h>
int main(){
    int a=12,b=5;
    printf(“今日は%d月%d日です。”,a,b);
    return 0;
}

出力結果は次のようになります。

今日は12月5日です。

扱う変数が整数の時は%dを使います。

具体例②

 #include <stdio.h>
int main(){
    int a=12,b=5;
    printf(“今日は%x月%x日です。”,a,b);
    return 0;
}

出力結果は次のようになります。

今日はc月5日です。

%xは変数が整数の時に使いますが、数値を16進数に変えて出力します。
12は16進数でcに対応します。

具体例③

 #include <stdio.h>
int main(){
    int a=12,b=5;
    printf(“今日は%o月%o日です。”,a,b);
    return 0;
}

出力結果は次のようになります。

今日は14月5日です。

%oは変数が整数の時に使いますが、数値を8進数に変えて出力します。
12は8進数で14に対応します。

具体例④

 #include <stdio.h>
int main(){
    float a=10.5,b=5.3;
    printf(“重さは%fグラムと%fグラムです。”,a,b);
    return 0;
}

出力結果は次のようになります。

重さは10.500000グラムと 5.300000グラムです。

%fは変数が小数の時に使いますが、小数点以下6桁まで出力します。出力する桁数の変更については、次回のパート5で解説します。

具体例⑤

 #include <stdio.h>
int main(){
    float a=10.5,b=5.3;
    printf(“重さは%eグラムと%eグラムです。”,a,b);
    return 0;
}

出力結果は次のようになります。

重さは2.000000e+003グラムと 5.000000e+002グラムです。

%eは変数が小数の時に使います。これも小数点以下6桁まで出力しますが、表示する形が、
小数点以下6桁×10^n
という10の累乗の形で出力します。


%c は文字が1文字のとき、%s は文字が2文字以上の時に使いま す。%c で2文字以上の文字列を表示することはできないので注意しましょう。

文字や文字列の初期化は少し特殊なので、次回以降詳しく扱います。その際に具体例も提示したいと思います。


p.s  前回の投稿から大分遅くなってしまいました。少しずつ投稿再開していきたいと思いますので、応援よろしくお願いします。


この記事が気に入ったらサポートをしてみませんか?