인프런 커뮤니티 질문&답변

IEYEI님의 프로필 이미지
IEYEI

작성한 질문수

홍정모의 따라하며 배우는 C언어

6.1 while 반복 루프에서 scanf()의 반환값 사용하기

scanf 함수의 시간측정

해결된 질문

작성

·

325

2

교수님의 강의에서 

status = scanf("%d", &num);

while (status == 1)

{

sum += num;

printf("Enter a next integer (q to quit): ");

status = scanf("%d", &num);

}

이런식으로 된것을 판단식에 scanf 를 넣어서 코드를 간결하게 줄였는데, 이 경우 더 효율적으로 돌아 갈 것 같아서

#include <time.h> 를 통해서 시간측정을 해보려고 하니

scanf 함수를 받을때 제가 값을 입력하는데 걸리는 시간이 매번다르니 측정이 불가능 하였습니다.

방법이 있을 까요? 

답변 2

1

IEYEI님의 프로필 이미지
IEYEI
질문자

감사합니다.

1

"이런식으로 된것을 판단식에 scanf 를 넣어서 코드를 간결하게 줄였는데," 라고 하셨는데 그 코드가 뭔지 봐야 정확히 판단할 수 있겠지만..! 아마 시간 재보셔도 거의 시간 차이가 없을 것이라고 생각됩니다. 아주 많은 입력을 넣는다면 차이가 보이겠지만, 이 코드는 하나 하나 사용자 입력을 받는 것이기 때문에 시간 차이를 재셔도 차이가 없다시피 할 것으로 생각 돼요.  

그리고 저도 조언을 드리기 위해선 time.h 사용법을 공부해야해서 답변 드리기 좀 어려운 부분이 있는데요 ㅠ (해당 강의와 관련없는 부분이기도 하구요)

입력 하는데 걸리는 시간을 제외하려면, scanf 입력이 끝난 후 부터 시간을 셀 수는 없을까요? (즉, scanf 로부터 리턴을 받았을 때부터)

IEYEI님의 프로필 이미지
IEYEI

작성한 질문수

질문하기