teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

追記

2021/11/03 02:46

投稿

episteme
episteme

スコア16612

answer CHANGED
@@ -1,4 +1,35 @@
1
1
  > void put_hyo(int gyo,int retu,int hyo[gyo][retu]);
2
2
 
3
3
  コンパイル・エラーとなって当然かと。
4
- 引数に配列を与える場合、要素数は**定数**でなくてはならんので。
4
+ 引数に配列を与える場合、要素数は**定数**でなくてはならんので。
5
+
6
+ ```C
7
+ #include <stdio.h>
8
+ void put_hyo(int gyo, int retu, int* hyo){
9
+ int i=0;
10
+ int j=0;
11
+ printf("{\n");
12
+ for ( i = 0; i < gyo-1; i++)
13
+ {
14
+ printf(" { %2d",hyo[i*retu+0]);
15
+ for ( j = 1; j < retu; j++)
16
+ {
17
+ printf(", %2d",hyo[i*retu+j]);
18
+ }
19
+ printf(" },\n");
20
+ }
21
+ printf(" { %2d",hyo[(gyo-1)*retu+0]);
22
+ for ( j = 1; j < retu; j++)
23
+ {
24
+ printf(", %2d",hyo[(gyo-1)*retu+j]);
25
+ }
26
+ printf(" }\n}\n");
27
+ }
28
+
29
+ int main() {
30
+ int matrix[2][3] = { {1, 2, 3},
31
+ {4, 5, 6} };
32
+ put_hyo(2, 3, (int*)matrix);
33
+ return 0;
34
+ }
35
+ ```