2차원 배열 배우는중인데 질문입니다.
방방
질문 내용 : #includestdio.h
int seatassign(int v, int h);
int seat[5][5];
int main(void)
{
int vline; //세로 라인
int hline; //가로 라인
while(1)
{
printf(할당할 좌석의 세로, 가로 위치 입력: );
scanf(%d %d, &vline, &hline);
if(hline=0 || vline=0)
break;
if(seatassign(vline, hline)==-1)
printf(이미 할당된 자리 입니다.\n\n);
else
printf(할당이 완료 되었습니다.\n\n);
}
printf(사용해 주셔서 감사합니다. \n\n);
return 0;
}
int seatassign(int v, int h)
{
if(seats[v-1][h-1]) // 이미 할당된 자리라면
return -1;
seats[v-1][h-1]=1
return 1;
}
책에 있는 예제입니다.
if(seats[v-1][h-1]) // 이미 할당된 자리라면
이 문장이 이해가 잘안되네요.
seats[v-1][h-1] 이것이 조건이 될수있나요?
-
연꽃
if(seats[v-1][h-1])
는
if(seats[v-1][h-1] != 0)
이것과 같습니다. -
호빵녀
아 감사합니다. 이제 이해가 되네요.
-
앵겨쭈
if(seats[v-1][h-1]) 는 if()함수 내의 내용이 참인지 거짓인지 판단하는것입니다.
즉, seats[v-1][h-1]에 데이타가 있다면 참,없다면 거짓이겠지요.