回答編集履歴
2
コードを修正
test
CHANGED
@@ -16,13 +16,13 @@
|
|
16
16
|
|
17
17
|
|
18
18
|
|
19
|
-
int main()
|
19
|
+
int main(void)
|
20
|
+
|
21
|
+
{
|
20
22
|
|
21
23
|
char num[3][4] = {{1, 2, 3, 4}, {1, 3, 2, 4}, {4, 3, 1, 2}};
|
22
24
|
|
23
25
|
char *num_p;
|
24
|
-
|
25
|
-
int i, j;
|
26
26
|
|
27
27
|
|
28
28
|
|
@@ -30,9 +30,9 @@
|
|
30
30
|
|
31
31
|
|
32
32
|
|
33
|
-
for (i = 0; i < 3; i++) {
|
33
|
+
for (int i = 0; i < 3; i++) {
|
34
34
|
|
35
|
-
for (j = 0; j < 4; j++) {
|
35
|
+
for (int j = 0; j < 4; j++) {
|
36
36
|
|
37
37
|
if (*num_p == 1) {
|
38
38
|
|
1
補足を追加
test
CHANGED
@@ -3,6 +3,10 @@
|
|
3
3
|
|
4
4
|
|
5
5
|
とりあえず、ポインター変数を`char *num_p;`にして、`num_p`を使う場面では`[]`の類を全部取り、内側のループで`num_p++`で位置をずらしつつ、`"$"`を`'$'`に、`"{ }"`は(1文字しか設定できないので)`'{'`にすれば、「配列の数値を文字に置き換える」というプログラムにはなりますね。
|
6
|
+
|
7
|
+
|
8
|
+
|
9
|
+
ついでに、元のコードだと、置き換えた後の状態を確認できないので、printfの位置を後ろに移動。
|
6
10
|
|
7
11
|
|
8
12
|
|