-
카테고리
-
세부 분야
프로그래밍 언어
-
해결 여부
미해결
getchar() 질문
21.04.15 21:36 작성 조회수 185
0
float min = FLT_MAX;
float max = -FLT_MAX;
float sum = 0.0f;
float num=0.0f;
int n = 0;
while (getchar(num) != 'q')
{
max = (num > max) ? num : max;
min = (num < min) ? num : min;
sum += num;
n++;
}
if (n > 0)
printf("min =%f, max=%f, ave=%f", min, max, sum / n);
else
printf("no input");
제가 이렇게 실행을 하였더니
min =0.000000, max=0.000000, ave=0.000000 이렇게 나와서
디버그를 해봤더니 getchar(num)가 실행돼서 숫자가 입력되어도
max, min의 값은 안 바뀌고 초기화된 0을 계속 유지하더라고요 왜 그러는 건가요?
뭐가 잘못 되었나요?
답변을 작성해보세요.
0
홍정모
지식공유자2021.04.16
1. 컴파일 오류가 없나요?
2. 구글에서 getchar를 검색해서 나오는 예제를 보고 뭐가 다른지 찾아보세요. 예를 들어서 아래 페이지(검색하면 많이 나오는 페이지 입니다)의 Example에서 getchar를 어떻게 사용하고 있는지 비교해보세요.
https://www.tutorialspoint.com/c_standard_library/c_function_getchar.htm
답변 1