본문 바로가기

C 언어/연습문제

C언어 연습문제21

[문제]

길이가 6인 int형 배열 arr을 선언하고 이를 1, 2, 3, 4, 5, 6으로 초기화한 다음, 배열에 저장된 값의 순서가 6, 5, 4, 3, 2, 1이 되도록 변경하는 프로그램을 작성해보자. 단, 배열의 앞과 뒤를 가리키는 포인터 변수 두 개를 선언해서 이를 활용하여 저장된 값의 순서를 뒤바꿔야 한다.

 

[실행결과]

6 5 4 3 2 1

 

[코드]

#include<stdio.h>

int main(void)
{
	int i, temp;
	int arr[6] = { 1, 2, 3, 4, 5, 6 };
	int* fptr = &arr[0];
	int* bptr = &arr[5];

	for (i = 0; i < 3; i++)
	{
		temp = *fptr;
		*fptr = *bptr;
		*bptr = temp;
		fptr += 1;
		bptr -= 1;
	}

	for (i = 0; i < 6; i++)
		printf("%d ", arr[i]);

	return 0;
}

 

<참고>

윤성우의 열혈 C 프로그래밍

'C 언어 > 연습문제' 카테고리의 다른 글

C언어 연습문제23  (0) 2021.11.24
C언어 연습문제22  (0) 2021.11.22
C언어 연습문제20  (0) 2021.11.18
C언어 연습문제19  (0) 2021.11.16
C언어 연습문제18  (0) 2021.11.15