【課題8−1】

 

(プログラム例)

#include <stdio.h>

#define N 3

typedef struct data_record {  /* RECORD型構造体の定義 */

         int id;

         int length;

         double data[100];

} RECORD;

 

int main(void) {

         RECORD tbl[N] = {{1, 5, {0.0, 1.1, 2.2, 3.3, 4.4}},

                             {2, 3, {12.3, 23.4, 34.5}},

                             {3, 2, {0.987, 0.654}}};

         RECORD *tptr = tbl; /* RECORD型構造体のポインタtptrを宣言し、配列tblの先頭アドレスで初期化 */

         int i, j;

 

         for (i = 0; i < N; i++) {

         /* 配列tblの各要素をポインタtptrをつかってアクセス */

                 printf("record #%d\n", tptr->id);

                 for (j = 0; j < tptr->length; j++)

                          printf("%5.3f ", tptr->data[j]);

                 printf("\n");

                 tptr++; /* 次の要素へ */

         }

         return 0;

}