카테고리 없음

[C] TEST-8

root_go 2022. 10. 6. 09:08

(C/C++프로그래밍 과제_8) 포인터 연산

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

-코드 참고

int main(void){

int arr[6]={1,2,3,4,5,6};

int * ptr1 = &arr[0]; // 배열의 첫번째 주소를 가리키는 포인터변수 선언

int * ptr2 = &arr[5]; // 배열의 마지막 주소를 가리키는 포인터변수 선언

int temp=0; // 배열의 값을 임시로 저장할 변수 선언

int i, j;

#include <iostream>

int main(void) {
	int arr[6] = { 1, 2, 3, 4, 5, 6 };
	int* p1 = &arr[0];
	int* p2 = &arr[5];
	int temp;
	for (int i = 0; i < 3; i++,p1++,p2--) { 
				temp = *p1;
				*p1 = *p2;
				*p2 = temp;				
		}
	for (int i = 0; i < 6; i++) {
		printf("%d ", arr[i]);
	}
}