c언어 질문

조회수 1288회

비쥬얼 스튜디오를 통해 컴파일링 하다가 오류가 발생했습니다. 아래 코드는 섭씨온도를 화씨온도로 바꿔 주는 코드입니다. 오류내용은 아래와 같습니다. 어떻게 고쳐야 될까요?

  1. 초기화 되지 않은 메모리 'Fah'를 사용하고 있습니다.
  2. 초기화 되지 않은 메모리 'Cel'를 사용하고 있습니다.
  3. 초기화 되지 않은 'Fah' 지역 변수를 사용했습니다.
  4. 'printf'가 정의되지 않았습니다. extern은 int형을 반환하는 것으로 간주합니다.
#include <stdio.h>

double CelToFah(double Cel, double Fah)
{
    Fah = 1.8 * Cel + 32;
    return Fah;
}

double FahToCel(double Cel, double Fah)
{
    Cel = (Fah - 32.0) / 1.8;
    return Cel;
}

int main()
{
    double Cel, Fah;
    int num;
    printf("1. 섭씨 온도를 화씨 온도로 \n2. 화씨 온도를 섭씨 온도로 \n");
    scanf("%d", &num);
    if (num == 1)
    {
        printf("섭씨 온도를 입력해 주세요. \n");
        scanf("%lf", &Cel);
        printf("%f℃ = %fF", Cel, CelToFah(Cel, Fah));
    }
    else if (num == 2)
    {
        printf("화씨 온도를 입력해 주세요. \n");
        scanf("%lf", &Fah);
        printf("%fF = %f℃", Fah, FahToCel(Cel, Fah));
    }
    else
        printf("오류");
    return 0;
}
  • (•́ ✖ •̀)
    알 수 없는 사용자

1 답변

  • 아래 코드 참고하세요.

    • 코드
    #define _CRT_SECURE_NO_WARNINGS
    
    #include <stdio.h>
    
    double CelToFah(double Cel)
    {
        double Fah = 1.8 * Cel + 32;
        return Fah;
    }
    
    double FahToCel(double Fah)
    {
        double Cel = (Fah - 32.0) / 1.8;
        return Cel;
    }
    
    int main()
    {
        double Cel, Fah;
        int num;
        printf("1. 섭씨 온도를 화씨 온도로 \n2. 화씨 온도를 섭씨 온도로 \n");
        scanf("%d", &num);
        if (num == 1)
        {
            printf("섭씨 온도를 입력해 주세요. \n");
            scanf("%lf", &Cel);
            printf("%f℃ = %fF", Cel, CelToFah(Cel));
        }
        else if (num == 2)
        {
            printf("화씨 온도를 입력해 주세요. \n");
            scanf("%lf", &Fah);
            printf("%fF = %f℃", Fah, FahToCel(Fah));
        }
        else
            printf("오류");
        return 0;
    }
    
    • 결과

    이미지

    • (•́ ✖ •̀)
      알 수 없는 사용자

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)