Computer >> 컴퓨터 >  >> 프로그래밍 >> C 프로그래밍

C 언어에서 배열 요소를 역순으로 출력하는 방법

C 프로그래밍에서 배열에 저장된 요소들을 역순으로 출력하는 것은 반복문의 인덱스를 거꾸로 순회하는 간단한 방식으로 구현할 수 있습니다. 아래에서 알고리즘과 전체 예제 코드를 단계별로 살펴보겠습니다.

알고리즘

배열 요소를 역순으로 출력하기 위해 다음과 같은 절차를 따릅니다.

1단계 – 크기가 5인 배열을 선언합니다.

2단계 – for 반복문을 사용하여 메모리에 5개의 요소를 입력받습니다.

3단계 – 감소하는(decrement) for 반복문을 이용해 요소를 역순으로 출력합니다.

핵심 로직

요소를 역순으로 출력하는 핵심은 인덱스를 마지막부터 시작해 0까지 감소시키는 for 반복문입니다.

for(i=4;i>=0;i--){
   // 결과 출력 //
   printf("array[%d] :",i);
   printf("%d\n",array[i]);
}

예제 코드

다음은 배열 요소를 역순으로 출력하는 C 프로그램입니다.

#include<stdio.h>
void main(){
   // 실행 시간(run time)에 배열 선언 //
   int array[5],i;
   // 배열에 요소 입력 받기 //
   printf("Enter elements into the array: \n");
   // for 반복문 //
   for(i=0;i<5;i++){
      // 사용자 입력 읽기 //
      printf("array[%d] :",i);
      scanf("%d",&array[i]);
   }
   // 배열 요소를 역순으로 출력 //
   printf("The elements from the array displayed in the reverse order are :\n");
   for(i=4;i>=0;i--){
      // 결과 출력 //
      printf("array[%d] :",i);
      printf("%d\n",array[i]);
   }
}

실행 결과

위 프로그램을 실행하면 다음과 같은 결과가 출력됩니다.

Enter elements into the array:
array[0] :23
array[1] :13
array[2] :56
array[3] :78
array[4] :34
The elements from the array displayed in the reverse order are:
array[4] :34
array[3] :78
array[2] :56
array[1] :13
array[0] :23

정리

이 방식의 장점은 별도의 추가 배열이나 복잡한 알고리즘이 필요 없다는 점입니다. 첫 번째 반복문으로 배열에 값을 저장한 뒤, 두 번째 반복문에서 인덱스를 n-1부터 0까지 감소시키며 순회하면 원본 배열을 그대로 유지한 채 역순 출력만 수행할 수 있습니다. 만약 배열 자체의 순서를 실제로 뒤집어야 한다면, 두 개의 인덱스를 사용해 앞뒤 요소를 서로 교환(swap)하는 방식을 활용할 수 있습니다.