C言語関係掲示板

過去ログ

No.99.メンバに配列を含む構造体の表示


こんにちは、またしても初歩的な質問なのですが、
どうかよろしくお願いします。

えと、以下のものをprintfで表示したいのですが、
どうすればよいのでしょうか?

struct {
int a[4][6];
int b[4][6];
} c[4]={{{1,2,3,4,5,6},{1,2,3,4,5,6}},
{{7,8,9,10,11,12},{7,8,9,10,11,12}},
{{13,14,15,16,17,18},{13,14,15,16,17,18}},
{{19,20,21,22,23,24},{19,20,21,22,23,24}}};

自分はこう(↓)やっているのですが、6番目以降表示されないのですが・・・

int x,y;

for (y = 0; y < 4; y++)
{
for (x = 0 ; x < 6; x++)
{
printf ("%02d\n", c->a[y][x]);
}
}

printf("\n");

for (y = 0 ; y < 4; y++)
{
for (x = 0 ; x < 6; x++)
{
printf ("%02d\n",c->b[y][x]);
}
}


>こんにちは、またしても初歩的な質問なのですが、
>どうかよろしくお願いします。
>
#include <stdio.h>

#define MAX     6
#define STRUCT_MAX      4

typedef struct {
        int a[MAX];
} C;

int main(void)
{
        C c1[STRUCT_MAX] = {
                {0,1,2,3,4,5}, {6,7,8,9,10,11},
                {12,13,14,15,16,17}, {18,19,20,21,22,23},
        };              
        int i, j;
        
        for (i = 0; i <  STRUCT_MAX; i++) {
                for (j = 0; j <  MAX; j++) {
                        printf("%3d", c1[i].a[j]);
                } puts("");     
        }
        
        return 0;
}

こんな感じになります。


おかげさまで問題が解けました。
shuさん、どうもありがとうございました。

戻る


「初心者のためのポイント学習C言語」 Last modified:2002.01.11
Copyright(c) 2000-2002 TOMOJI All Rights Reserved