두 수의 값 바꾸기
Written on April 25, 2017
두 정수형 변수 x=10, y=20이 있고 이를 출력하면 다음과 같습니다.
#include <stdio.h>
int main(){
int x=10, y=20;
printf("x:%d, y:%d\n",x,y);
return 0;
}
출력 결과
x:10, y:20
x,y의 값을 서로 바꾸고 각 값을 출력하기 위한 방법은 다음과 같습니다.
#include <stdio.h>
int main(){
int x=10, y=20;
int temp=0;
printf("Original x:%d, y:%d\n",x,y);
// 바꾸기 전 : x=10, y=20, temp=0
temp=x; // x=10, y=20, temp=10
x=y; // x=20, y=20, temp=10
y=temp; // x=20, y=10, temp=10
printf("Changed x:%d, y:%d\n",x,y);
return 0;
}
출력 결과
Original x:10, y:20
Changed x:20, y:10
두 변수의 값을 바꾸기 위해 temp
(temporary의 줄임말)라는 임시 변수(주로 이렇게 부를 뿐 특별한 기능은 없습니다.)를 만들었고,
소스 코드 내에서의 흐름은 다음과 같습니다.
소스 코드의 진행에 따른 각 변수의 값은 주석(//
뒤의 문장)을 참고하시면 이해가 쉽습니다.