yonghole   5년 전

#include <stdio.h>

int main(){

    char c=0;

    

    

    while(1){

        c=getchar();

        if(c==EOF)

            return 0;

        

        putchar(c);

    }

    return 0;

}

다음과 같이 제출해서 정답을 받았습니다.


하지만 다음의 소스코드와 같이 함수만 바꿨을 뿐인데 오답처리가 되는 이유를 모르겠습니다. 제가 알기로 fgets 와 fputc에 표준 입출력 스트림을 지정하면 

getchar 과 putchar 과 똑같아 지는 것이 아니었나요?

djm03178   5년 전

질문을 이해하지 못하겠습니다. 우선, 두 코드 모두 정답 코드가 아닐 뿐더러 아래 코드는 c에 입력을 저장하고 있지도 않습니다. 위의 코드도 열 개씩 끊어 출력하는 부분이 없기 때문에 절대로 정답이 될 수 없습니다.

게다가 이 문제에서 오답을 받으신 적도 없고, 컴파일 에러만 한 번 났는데 컴파일 에러 메시지는 "컴파일 에러"라고 쓰인 곳을 클릭하면 에러 메시지를 볼 수 있습니다.

질문을 할 때는 항상 제출했던 코드를 한 글자도 다름없이 그대로 올려주세요.

yonghole   5년 전

죄송합니다. 문제 번호를 잘못 올렸네요. 그대로 출력하기 문제에 대한 질문이었습니다. 

djm03178   5년 전

말씀드렸듯이, 아래 코드에는 c에 입력을 받는 부분이 아예 없습니다. 로컬에서는 돌려보셨나요?

yonghole   5년 전

오류가 안떠서 모르고 있었네요... 정말 죄송합니다. 두 함수가 표준 입출력 스트림에서는 같은 역할을 수행하는 것은 맞게 이해하고 있는거겠지요? 감사합니다. 

댓글을 작성하려면 로그인해야 합니다.