scanf () цикл паузы в многострочном вводе - PullRequest
0 голосов
/ 26 июня 2018

У меня проблемы с вводом при использовании scanf () .Я пытаюсь ввести несколько отдельных символов в двухцветный массив символов.Все работает нормально до последней строки (, как только я в последний раз вхожу во внутренний цикл for ), где программа останавливается и ждет, пока я нажму клавишу ввода, затем она работаеткак задумано снова и заканчивается.Как я могу продолжить выполнение программы, не нажимая клавишу ввода?Примечание. Этот код является просто извлечением программы, содержащей проблему читабельности.

Ввод: Первые два целых числа - это строки и столбцы следующей матрицы, начинающиеся с новой строки, содержащей символы безпробелы, как показано в комментарии в коде

#include <stdio.h>

int main(void)
{
char matrix[100][100];
int nrows;  
int ncols;  

scanf("%d %d", &nrows, &ncols);

for (int i = 0; i<nrows; i++) {
    for (int j = 0; j<ncols; j++) {
        scanf(" %c", &matrix[i][j]);
        printf("[%d][%d]\n", i, j);     //to check pause
    }
}
return 0;
}

//10 20
//%%%&&%%%%%&&&%&%&&&%
//%%%&&%%%%%&&&%&%&&&%
//%%%&&%%%%%&&&%&%&&&%
//%%%&&%%%%%&&&%&%&&&%
//%%%&&%%%%%&&&%&%&&&%
//%%%&&%%%%%&&&%&%&&&%
//%%%&&%%%%%&&&%&%&&&%
//%%%&&%%%%%&&&%&%&&&%
//%%%&&%%%%%&&&%&%&&&%
//%%%&&%%%%%&&&%&%&&&%

Давно искали исправления для этого и пытались продвинуться вперед, используя getchar() и некоторое время, содержащее и '\n', и EOFпри условии такой же идентичной проблемы.

Заранее спасибо

...