Menu
Coddy logo textTech

요약: 포인터 기초

Coddy C 여정의 Logic & Flow 섹션에 포함된 레슨 — 63개 중 6번째.

challenge icon

챌린지

쉬움

여러 데이터 타입을 사용하여 전체적인 포인터 워크플로우를 보여주는 C 프로그램을 작성하세요. 프로그램은 다음을 수행해야 합니다:

  1. age라는 이름의 정수형 변수를 선언하고 25로 초기화합니다.
  2. grade라는 이름의 문자형 변수를 선언하고 'A'로 초기화합니다.
  3. temperature라는 이름의 실수형(float) 변수를 선언하고 98.6으로 초기화합니다.
  4. 다음에 해당하는 세 개의 포인터를 선언합니다:
    • age_ptr라는 이름의 정수형 포인터
    • grade_ptr라는 이름의 문자형 포인터
    • temp_ptr라는 이름의 실수형 포인터
  5. 주소 연산자(address-of operator)를 사용하여 각 변수의 주소를 해당 포인터에 할당합니다.
  6. 역참조 연산자(dereference operator)를 사용하여 포인터를 통해 세 가지 값을 모두 다음 형식으로 출력합니다:
    • Age: [value]
    • Grade: [value]
    • Temperature: [value] (소수점 첫째 자리까지)
  7. 포인터를 통해 원래 변수의 값을 수정합니다:
    • age_ptr를 사용하여 age를 30으로 변경합니다.
    • grade_ptr를 사용하여 grade를 'B'로 변경합니다.
    • temp_ptr를 사용하여 temperature를 99.5로 변경합니다.
  8. 수정된 값을 포인터가 아닌 원래 변수에서 직접 읽어 단계 6과 동일한 형식으로 출력합니다.

출력 결과는 다음과 같은 형식으로 표시되어야 합니다:

Age: 25
Grade: A
Temperature: 98.6
Age: 30
Grade: B
Temperature: 99.5

이 챌린지는 포인터 선언, 주소 할당, 값을 읽고 쓰기 위한 역참조에 대한 이해도를 테스트하며, 포인터가 원래 변수의 메모리 위치에 직접 접근할 수 있음을 보여줍니다.

직접 해보기

#include <stdio.h>

int main() {
    // TODO: 여기에 코드를 작성하세요
    // 변수와 포인터 선언
    // 포인터에 주소 할당
    // 포인터를 통해 값 출력
    // 포인터를 통해 값 수정
    // 원본 변수로부터 수정된 값 출력
    
    return 0;
}

Logic & Flow의 모든 레슨