C언어 기초: 배열 예제(3)

김영채 (Kevin)·2020년 4월 11일
0

C언어

목록 보기
9/23
post-thumbnail

배열이 중요하다 보니 배열 문제가 좀 많다. 그래도 어려운 문제가 아니라서 지금까지 비교적 쉽게 풀 수가 있었다.

문제부터 살펴보자:

우선 문제만 보고, 바로 두 가지 배열을 선언해야 한다는 것을 알 수 있다.

int ary1[5];
int ary2[5];

그리고, 두 배열에 각기 다른 input이 들어와야 하므로, 2가지의 for문을 사용해야 한다.

for(int i=0;i<5;i++){
	scanf("%d", &ary1[i]);
}
    
for(int i=0;i<5;i++){
	scanf("%d", &ary2[i]);
}

다음으로, 두 배열을 비교하기 위해서는 for문 안의 if문을 활용하면 될 것 같다:

if(ary1[i]==ary2[i])

우선, 생각나는 것들을 토대로 아래와 같이 필기를 했다.

그럼, 최종 코드를 보도록 하자:

int main(void)
{

    int ary1[5],ary2[5];
    
    for(int i=0;i<5;i++){
        scanf("%d", &ary1[i]);
    }
    
    for(int i=0;i<5;i++){
        scanf("%d", &ary2[i]);
    }
    
    for(int i=0;i<5;i++){
        if(ary1[i]==ary2[i]){
            continue;
        }
        else{
            printf("not same");
            goto loop;
        }
    }
    printf("same");
    
    loop:
    
    return 0;
}

마지막 else문을 빠져 나오기 위해서 goto loop이 아닌 break문을 애초에 썼었는데, 이렇게 하니까 원하는 출력 결과가 나오지 않았다.
그래서 지나가듯이 배운 goto 문을 사용했는데, 출력물이 원하는대로 나와 꽤 놀랐다. goto loop이라는 코드를 씀으로 밑의 printf("same"); 을 자연스럽게 지나치게 되고, 바로 return 0;로 갈 수 있게 되었다.

profile
맛있는 iOS 프로그래밍

0개의 댓글