演習課題「変数を書式に合わせて表示してみよう」
右側のコードエリアにあるプログラムは、「はレベルアップした」と表示するプログラムです。これを修正して、「勇者はレベルアップした」と出力してください。
プログラムを実行して、正しく出力されれば演習課題クリアです!
書式に%sを記述すると、変数を文字列に埋め込んで表示することができます。
期待する出力値
勇者はレベルアップした
演習課題「間違いを修正してみよう vol.1」
右側のコードエリアにあるプログラムは、実行するとエラーになります。
プログラムを修正して、「勇者の体力が回復した」と表示されるようにしてください。
プログラムを実行して、正しく出力されれば演習課題クリアです!
期待する出力値
勇者の体力が回復した
演習課題「間違いを修正してみよう vol.2」
右側のコードエリアにあるプログラムは、実行するとエラーになります。プログラムを修正して、「勇者と戦士の体力が回復した」と表示されるようにしてください。
プログラムを実行して、正しく出力されれば演習課題のクリアです!
期待する出力値
勇者と戦士の体力が回復した
演習課題「変数の文字を出力する」
右側のコードエリアにあるプログラムで、printfで出力されるメッセージの前に、すべて「勇者」という文字を表示するようにしてください。
プログラムを実行して、正しく出力されれば演習課題クリアです!
期待する出力値
勇者は荒野を歩いていた
勇者はモンスターと戦った
勇者はモンスターをたおした
#05:変数を使えるようになろう
ここでは、RPGのようにメッセージを表示するプログラムを作ります。そして、文字や数字などのデータを格納する「変数」(へんすう)について学びます。変数を使うと、データが変化したとき、いちいちプログラムの複数個所を修正しなくてもよくなります。
変数の名前は、次のルールに従って付けます。
- 最初の1文字目:英文字または、「_」(アンダーバー)
- 2文字目以降 :英文字・数字「_」(アンダーバー)
変数名の例:
○ player 1文字目が、英小文字
○ Player 1文字目が、英大文字
○ _weapon 1文字目が、「_」(アンダーバー)
○ player01 2文字目以降に数字
× 1player 1文字目に数字は使えない
また、Cは、予約語(キーワード)と呼ばれる単語が決まっており、この予約語は変数名に利用できません。
例えば、「int」や「void」といった単語が予約語になっています。
- Cの予約語(キーワード)
https://ja.wikipedia.org/wiki/%E3%82%AD%E3%83%BC%E3%83%AF%E3%83%BC%E3%83%89_%28C%E8%A8%80%E8%AA%9E%29
変数を使うとき、最初にデータの種類を指定して宣言する必要があります。char player[10] = "勇者"; // 文字列データの変数
int number = 3; // 整数データの変数
2回目以降、変数にデータを代入する時には、データの種類の指定は不要です。
printf関数では、書式を指定してデータを表示できます。char player[10] = "戦士";
printf("%sは、荒野を歩いていた", player); // %sにplayer変数のデータを表示
int price = 100;
printf("%d円", price); // %dにprice変数のデータを表示
以下のように、printf関数に文字列の変数を一つだけ与えると「コンパイルエラー」タブに警告のメッセージが表示されます。char player[10] = "戦士";
printf(player);
次のいずれかのように書くと、警告を出さないようにすることができます。char player[10] = "戦士";
printf("%s", player);char player[10] = "戦士";
puts(player);
より詳しく学びたい場合は、以下のURLを参照してみてください。
Wikipedia - 書式文字列攻撃
https://ja.wikipedia.org/wiki/%E6%9B%B8%E5%BC%8F%E6%96%87%E5%AD%97%E5%88%97%E6%94%BB%E6%92%83