演習課題「模様を出力してみよう」
右のコードは、2 次元配列を使って、縦に 5 個、横に 10 個の「.」を出力します。
コードを修正して、この2次元配列のインデックスが「どちらも 2 で割り切れる」場合には、「.」の代わりに「+」を出力してください。
プログラムを実行して、正しく出力されれば演習課題クリアです!
期待する出力値
+.+.+.+.+.
..........
+.+.+.+.+.
..........
+.+.+.+.+.
演習課題「模様を出力してみよう 2」
右のコードは、2 次元配列を使って、縦に 5 個、横に 10 個の「.」を出力します。
コードを修正して、以下のように「+」「.」が交互に並ぶ模様を出力してください。
+.+.+.+.+.
.+.+.+.+.+
+.+.+.+.+.
.+.+.+.+.+
+.+.+.+.+.
プログラムを実行して、正しく出力されれば演習課題クリアです!
期待する出力値
+.+.+.+.+.
.+.+.+.+.+
+.+.+.+.+.
.+.+.+.+.+
+.+.+.+.+.
#08:2次元配列で地図をつくろう - その2
前回に引き続いて、RPGの簡単なマップをつくってみましょう。
// 2 次元配列で地図をつくろう 2
#include <stdio.h>
int main(void)
{
char world_map[9][19];
for (int i = 0; i < 9; i++) {
for (int j = 0; j < 19; j++) {
world_map[i][j] = '#';
}
}
world_map[0][0] = 'S';
world_map[0][18] = '@';
world_map[8][18] = 'G';
for (int i = 0; i < 9; i++) {
printf("%d:", i);
for (int j = 0; j < 19; j++) {
printf("%c", world_map[i][j]);
}
printf("\n");
}
}
OR 演算子は「||」、AND 演算子は「&&」です。
・OR 演算子は 2 つの条件のどちらかが成り立つとき「真」になります。
・AND 演算子は 2 つの条件の両方が成り立つとき「真」になります。
たとえば、
「x < 10 || 20 < x」 は x が 10 より小さいか 20 より大きいとき真になります。
「10 <= x && x <= 20」 は x が 10 以上 20 以下のとき真になります。
このチャプターで作成したコードです。// 2 次元配列で地図をつくろう 2
#include <stdio.h>
int main(void)
{
char world_map[9][19];
for (int i = 0; i < 9; i++) {
for (int j = 0; j < 19; j++) {
if (i % 2 == 0 || j % 3 == 0) {
world_map[i][j] = '.';
} else {
world_map[i][j] = '#';
}
}
}
world_map[0][0] = 'S';
world_map[0][18] = '@';
world_map[8][18] = 'G';
for (int i = 0; i < 9; i++) {
printf("%d:", i);
for (int j = 0; j < 19; j++) {
printf("%c", world_map[i][j]);
}
printf("\n");
}
}
- C 言語の演算子について - C 言語
http://www.c-lang.org/operator.html