Computer >> 컴퓨터 >  >> 프로그램 작성 >> C 프로그래밍

C 프로그래밍을 사용하여 세 번째 또는 임시 변수를 사용하지 않고 두 숫자를 바꾸는 방법은 무엇입니까?

<시간/>

덧셈과 뺄셈 연산의 도움으로 한 메모리 위치에서 다른 메모리 위치로 두 개의 숫자를 바꿀 수 있습니다.

알고리즘

알고리즘은 아래에 설명되어 있습니다 -

시작

Step 1: Declare 2 variables x and y.
Step 2: Read two numbers from keyboard.
Step 3: Swap numbers.
//Apply addition and subtraction operations to swap the numbers.
   i. x=x+y
   ii. y=x-y
   iii. x=x-y
Step 4: Print x and y values.

프로그램

다음은 세 번째 변수나 임시 변수를 사용하지 않고 두 숫자의 교환을 설명하는 C 프로그램입니다. -

#include<stdio.h>
int main(){
   int x,y;
   printf("enter x and y values:");
   scanf("%d%d",&x,&y);// lets take x as 20 and y as 30
   x=x+y;// x=20+30=50
   y=x-y;//y=50-30=20
   x=x-y;//x=50-20=30
   printf("After swap x=%d and y=%d",x,y);
   return 0;
}

출력

다음과 같은 결과를 얻을 수 있습니다 -

enter x and y values:20 30
After swap x=30 and y=20

참고 − 세 번째 변수의 도움 없이 곱셈과 나눗셈 및 비트 XOR 연산자를 사용하여 두 숫자를 바꿀 수 있습니다.

곱셈과 나눗셈 연산자를 사용하여 두 숫자를 바꾸는 방법을 설명하는 다른 예를 고려하십시오.

프로그램

다음은 두 숫자를 교환하는 각각의 기능을 보여주는 C 프로그램입니다 -

#include<stdio.h>
int main(){
   int x,y;
   printf("enter x and y values:");
   scanf("%d%d",&x,&y);
   x=x*y;
   y=x/y;
   x=x/y;
   printf("After swap x=%d and y=%d",x,y);
   return 0;
}

출력

위의 프로그램을 실행하면 다음과 같은 결과를 얻을 수 있습니다 -

enter x and y values:120 250
After swap x=250 and y=120