カードを画面に表示する

display は、カードを画面に表示する関数です。

手札を配列として、標準出力に出力しています。


/* カードを画面に表示する */
void display(int flag,
             int nPlayerHands, char PlayerHands[NMAX][CMAX], int PlayerPoint,
             int nDealerHands, char DealerHands[NMAX][CMAX], int DealerPoint) {
  int n;

  printf("PlayerHands : ");
  for (n = 0; n < nPlayerHands; n++) {
    printf("%s", PlayerHands[n]);
    if (n != nPlayerHands - 1) printf(", ");
  }
  printf(" [%d]\n", PlayerPoint);

  if        (flag == 0) {
    printf("DealerHands : %s, ?\n", DealerHands[0]);
  } else if (flag == 1) {
    printf("DealerHands : ");
    for (n = 0; n < nDealerHands; n++) {
      printf("%s", DealerHands[n]);
      if (n != nDealerHands - 1) printf(", ");
    }
    printf(" [%d]\n", DealerPoint);

    if        (PlayerPoint == 0) {
      printf("Player Busted.\n");
    } else if (DealerPoint == 0) {
      printf("Dealer Busted.\n");
    } else if (PlayerPoint >  DealerPoint) {
      printf("Player Won.\n");
    } else if (PlayerPoint <  DealerPoint) {
      printf("Dealer Won.\n");
    } else if (PlayerPoint == DealerPoint) {
      printf("Push.\n");
    }
  }
}