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

함수의 포인터를 사용하여 합과 차를 찾는 C 프로그램

<시간/>

두 개의 숫자와 b가 있다고 가정합니다. (a + b)와 (a - b)를 모두 계산할 수 있는 함수를 정의해야 합니다. 그러나 C에서 함수를 사용하면 최대 하나의 값을 반환할 수 있습니다. 둘 이상의 출력을 찾으려면 포인터를 사용하여 출력 매개변수를 함수 인수로 사용할 수 있습니다. 여기 이 문제에서 우리는 +b로 업데이트하고 b를 -b로 업데이트할 것입니다. 함수를 호출할 때 이 두 변수의 주소를 전달해야 합니다.

따라서 입력이 a =5, b =8과 같으면 출력은 a + b =13 및 a - b =-3이 됩니다.

이 문제를 해결하기 위해 다음 단계를 따릅니다. −

  • solve() 함수를 정의하면 a 및 b

    주소를 사용합니다.
  • temp :=주소가 주어진 변수 값의 합

  • b :=주소가 주어진 변수 값의 차이

  • a =온도

예시

이해를 돕기 위해 다음 구현을 살펴보겠습니다. −

#include <stdio.h>
int solve(int *a, int *b){
    int temp = *a + *b;
    *b = *a - *b;
    *a = temp;
}
int main(){
    int a = 5, b = 8;
    solve(&a, &b);
    printf("a + b = %d and a - b = %d", a, b);
}

입력

a = 5, b = 8

출력

a + b = 13 and a - b = -3