前提・実現したいこと
横 8 マス×縦 8 マスの盤面がある。プログラムを実行すると 20 個の石が盤面上にランダムに置かれ
る。そしてキーボードから盤面上の位置を入力すると、その場所に石があるかどうかを判定するプロ
グラムを書きなさい。
という課題が出ています。そこでプログラムを作成していましたが、ビルドは通りますが最後まで動きません。解決方法が知りたいです。c言語です。
■■な機能を実装中に以下のエラーメッセージが発生しました。
発生している問題・エラーメッセージ
エラーメッセージ
該当のソースコード
c言語
ソースコード
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int main(void)
{
int b[8][8], i, j, k;
char a, c[3];
srand((unsigned)time(NULL));
for (i = 0; i < 8; i++)for (j = 0; j < 8; j++)b[i][j] = 0;
k = 0; while (k <= 20) { i = rand() % 8; j = rand() % 8; if (b[i][j] == 0) { b[i][j] = 1; k++; } } printf("--| 1| 2| 3| 4| 5| 6| 7| 8|\n"); printf("--+--+--+--+--+--+--+--+--|\n"); a = 'A'; for (i = 0; i < 8; i++) { printf(" %c|", a++); for (j = 0; j < 8; j++) { if (b[i][j] == 1)printf("○"); else printf(" "); printf("|"); } printf("\n--+--+--+--+--+--+--+--+--|\n"); } printf("○の位置を入力==>"); scanf_s("%s", c); i = c[0] - '1'; j = c[1] - 'A'; if (b[i][j] == 1)printf("正解\n"); else printf("不正解\n"); return 0;
}
試したこと
ここに問題に対して試したことを記載してください。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答2件
あなたの回答
tips
プレビュー