작성
·
271
0
Buffer값을 상상하면서 디버깅 해보고 있는데 어느 방식으로 동작하는지 모르겠습니다.
입력 : A 3 3
Buffer : [' ', \n]
c : 'A'
rows : 3
cols : 3
입력: B 1 2
Buffer : [\n, B, 1, 2, \n]
c : ' '
rows : 3
cols : 3
Buffer에서 ' ' 가져와서 c가 ' ' 것은 알겠지만
rows와 cols 값이 3인지 이해가 안됩니다.
입력 :
Buffer : [B, 1, 2, \n]
c : 'B'
rows : 1
cols : 2
왜 입력을 받지 않는지 궁금합니다.
답변 2
0
'rows와 cols 값이 3인지 이해가 안됩니다.'
'왜 입력을 받지 않는지 궁금합니다.'
라고 말씀해주신 질문이 다소 모호한 것 같습니다.
다만 'rows와 cols 값이 3인지 이해가 안됩니다.' 에 대한 질문은
버퍼 /row / cols 값을 '상상' 하지 마시고 직접 breakpoint를 찍어보시면
쉽게 그 이유를 알 수 있을 것이라 생각합니다.
왜 입력을 받지 않는지 궁금하다는 질문에 대해서는 개행이 버퍼에 들어간 것은 아닌지 살펴보세요.
0
#include <stdio.h>
void display(char cr, int lines, int width);
int main()
{
char c;
int rows, cols;
while (1)
{
scanf("%c %d %d", &c, &rows, &cols);
display(c, rows, cols);
if (c == '\n')
break;
}
return 0;
}
void display(char cr, int lines, int width)
{
int row, col;
for (row = 1; row <= lines; row++)
{
for (col = 1; col <= width; col++)
printf("%c", cr);
printf("\n");
}
}
최근 질문에 답변드리겠습니다.