더북(TheBook)

2차원 배열의 카드 지도를 출력해야 하므로 이중 for 문을 작성합니다. arrayAnimal[4][5] 배열에 접근하므로 바깥쪽 for 문은 4번 반복하고, 안쪽 for 문은 5번 반복합니다.

해당 위치의 카드가 앞면인지 뒷면인지 확인합니다. 앞면이면 이미 짝을 맞춘 상태이므로 다시 뒤집을 필요가 없으니까요. 앞면인지 뒷면인지는 checkAnimal 배열을 선언해 표시합니다. checkAnimal 배열의 요소 값이 1이면 짝을 맞춘 상태고, 0이면 짝을 맞추지 못한 상태입니다. 예를 들어, [0][1] 좌표의 카드가 앞면이면 checkAnimal[0][1]의 값은 1이 되고, 그렇지 않으면 0이 됩니다. checkAnimal 배열은 main()함수에서도 사용하니 전역변수로 선언합니다. 배열을 전역변수로 선언하면 모든 요소가 0으로 초기화되므로 따로 초기화할 필요는 없습니다. 따라서 처음에는 모두 0, 즉 뒷면으로 표시됩니다.

그림 8-17 checkAnimal 배열 예시

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.