プログラムがうまく動作しないのですが – プログラミング – Home

プログラムがうまく動作しないのですが
 
通知
すべてクリア

プログラムがうまく動作しないのですが


S
 S
(@S)
ゲスト
結合: 25年前
投稿: 1
Topic starter  

2次元配列を使って下に示す値を表示させるプログラムなんですが、
エラ-はないですけどうまく表示されないので、もしミスっている部分
がわかる方は教えてください。
(このように表示させる)
      ↓
+---+---+---+---+---+---+---+---+---+---+
| 0| 0| 0| 0| 0| 0| 0| 0| 0| 0|
+---+---+---+---+---+---+---+---+---+---+
| 1| 1| 1| 1| 1| 1| 1| 1| 1| 1|
+---+---+---+---+---+---+---+---+---+---+
| 2| 2| 2| 2| 2| 2| 2| 2| 2| 2|
+---+---+---+---+---+---+---+---+---+---+
| 3| 3| 3| 3| 3| 3| 3| 3| 3| 3|
+---+---+---+---+---+---+---+---+---+---+
| 4| 4| 4| 4| 4| 4| 4| 4| 4| 4|
+---+---+---+---+---+---+---+---+---+---+
| 5| 5| 5| 5| 5| 5| 5| 5| 5| 5|
+---+---+---+---+---+---+---+---+---+---+
| 6| 6| 6| 6| 6| 6| 6| 6| 6| 6|
+---+---+---+---+---+---+---+---+---+---+
| 7| 7| 7| 7| 7| 7| 7| 7| 7| 7|
+---+---+---+---+---+---+---+---+---+---+
| 8| 8| 8| 8| 8| 8| 8| 8| 8| 8|
+---+---+---+---+---+---+---+---+---+---+
| 9| 9| 9| 9| 9| 9| 9| 9| 9| 9|
+---+---+---+---+---+---+---+---+---+---+
プログラム
#include<stdio.h>
void adisp2(int *arry);
void main(void)
{
int arry[10][10];
int r,i,j;
r=0;
for(i=0;i<10;i++){
for(j=0;j<10;j++)
arry[i][j]=r;
r++;
}
adisp2(&arry[0][0]);
}
void adisp2(int *arry)
{
int i,j;
printf(+---+---+---+---+---+---+---+---+---+---+\n);
for(i=0;i<10;i++){
for(j=0;j<10;j++){
printf(|%3d,*arry++);
printf(|\n);
printf(+---+---+---+---+---+---+---+---+---+---+\n);
}
}
}


引用解決済
トピックタグ
EMI
 EMI
(@EMI)
ゲスト
結合: 25年前
投稿: 5
 

配列の渡し方などが間違ってます。
これでどうでしょう?
実験してないので、うまく動くかどうかは保証できませんが。

#include<stdio.h>

void adisp2(int *arry[10]);

void main(void)
{
int arry[10][10];
int r, i, j;
r = 0;
for(i = 0; i < 10; i++){
for(j = 0; j < 10; j++)
arry[i][j] = r;
r++;
}
adisp2(arry);
}

void adisp2(int *arry[10])
{
int i, j;
puts(+---+---+---+---+---+---+---+---+---+---+);
for(i = 0; i < 10; i++){
for(j = 0; j < 10; j++){
printf(|%3d, array[i][j]);
puts(|);
puts(+---+---+---+---+---+---+---+---+---+---+);
}
}
}


返信引用
ゆういち
 ゆういち
(@ゆういち)
ゲスト
結合: 25年前
投稿: 8
 

こんなのはどうでしょう

01:void adisp2(int *arry)
02:{
03: int i,j;
04: printf(+---+---+---+---+---+---+---+---+---+---+\n);
05: for(i=0;i<10;i++){
06: for(j=0;j<10;j++){
07: printf(|%3d,*arry++);
08: }
09: printf(|\n);
10: printf(+---+---+---+---+---+---+---+---+---+---+\n);
11: }
12:}

09,10行目の位置を変更しました

以上


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました