C言語でデータを表形式に出力の方法

C言語によるテーブル形式のデータ出力は、ループ構造と制御文字を適切に利用することで実現できる。例を以下に示す。

#include <stdio.h>

int main() {
  int data[3][3] = { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} };
  int i, j;

  printf("  Column 1  Column 2  Column 3\n");
  printf("--------------------------------\n");
  for (i = 0; i < 3; i++) {
    printf("Row %d", i + 1);
    for (j = 0; j < 3; j++) {
      printf("%9d", data[i][j]);
    }
    printf("\n");
  }

  return 0;
}

これは正しく翻訳できません。

  Column 1  Column 2  Column 3
--------------------------------
Row 1        1        2        3
Row 2        4        5        6
Row 3        7        8        9

本サンプルでは、出力するデータを2次元配列のdataに格納しています。ネストしたforループで配列の各要素を順に参照し、printf関数とフォーマット文字列%9dで各要素の値を出力し、タブ文字\tで出力を整列させています。さらに、表の見出しや区切り線を他のprintf関数で出力し、表形式のように見栄えを整えています。

bannerAds