본문 바로가기
숙제

C++ 숙제(포인터 변수를 활용한 변수값 변경, 레퍼런스 변수를 활용한 변수값 변경)

by unrealstudy-jin 2025. 8. 13.

숙제 1. 포인터 변수를 활용한 변수값 변경

아래 제공된 코드를 활용해서 정수형 변수를 선언하고, 그 변수를 가리키는 포인터를 만든 뒤, 포인터를 사용하여 변수의 값을 출력하려 합니다.

코드의 ___으로 표시된 빈칸을 적절한 C++ 코드로 채워서 프로그램을 완성하세요.

#include <iostream>

int main() {
    // 1. 정수형 변수 value를 선언하고 25라는 값을 할당하세요.
    int value = ___; // <-- 이 부분을 채우세요. value 변수에 초기값 25를 넣으세요.

    // 2. value 변수의 주소를 저장할 포인터 변수 ptr을 선언하세요.
    //    ptr이 value를 가리키도록 value 변수의 주소를 ptr에 저장하세요.
    int* ptr = ___; // <-- 이 부분을 채우세요. value 변수의 주소를 여기에 넣으세요.

    // 3. 포인터 ptr을 사용하여 value 변수의 값을 출력하세요.
    //    (힌트: 포인터가 가리키는 값을 얻으려면 역참조 연산자 '*'를 사용합니다.)
    std::cout << "포인터를 통해 접근한 value의 값: " << ___; // <-- 이 부분을 채우세요. ptr이 가리키는 값을 출력하세요.
    std::cout << std::endl;

    return 0;
}

풀이

1. 25

2. &value

3. *ptr

결과


 

숙제 2. 레퍼런스 변수를 활용한 변수값 변경

아래 C++ 코드는 정수형 변수를 선언하고, 그 변수에 대한 레퍼런스를 생성한 뒤, 레퍼런스를 사용하여 변수의 값을 출력하고 변경하는 과정을 보여줍니다.

코드의 ___으로 표시된 빈칸을 적절한 C++ 코드로 채워서 프로그램을 완성하세요.

#include <iostream>

int main() {
    // 1. 정수형 변수 score를 선언하고 80이라는 값을 할당하세요.
    int score = ___; // <-- 이 부분을 채우세요. score 변수에 초기값 80을 넣으세요.

    // 2. score 변수를 참조(Reference)하는 레퍼런스 변수 score_ref를 선언하세요.
    int& score_ref = ___; // <-- 이 부분을 채우세요. score_ref가 score를 참조하게 만드세요.

    // 3. 레퍼런스 score_ref를 사용하여 score 변수의 값을 출력하세요.
    std::cout << "레퍼런스를 통해 접근한 score의 값: " << ___; // <-- 이 부분을 채우세요. score_ref를 사용하세요.
    std::cout << std::endl;

    // 4. 레퍼런스 score_ref를 사용하여 score 변수의 값을 95로 변경하세요.
    score_ref = ___; // <-- 이 부분을 채우세요. score_ref에 새 값 95를 할당하세요.

    // 5. score 변수의 값이 실제로 변경되었는지 확인하기 위해 score 변수 자체를 출력하세요.
    std::cout << "레퍼런스 변경 후 score의 값: " << ___; // <-- 이 부분을 채우세요. score 변수 자체를 사용하세요.
    std::cout << std::endl;


    return 0;
}

풀이

1. 80

2. score

3. score_ref

4. 95

5. score

결과