c언어 입출력함수

image

이렇게 vi 만들고 gcc한다음 ./hello 해서 실행하면 1.25가 바로 뜨는게 아닌건가요?

c언어가 처음이라서 컴퓨터 언어에 대해서 잘 모르는 상태입니다.

./hello 하고 x를 누르면 1.250000이 뜨는데 왜 1.25가 아닌 1.25인지 모르겠습니다.

scanf는 표준입력을 받는 함수이고요,
표준입력은 님이 키보드로 무언가를 치고 엔터를 누르면 그게 들어갑니다.
여기에 scanf는 format을 지정해줄 수 있는데, 그게 %f, %d, %c 뭐 이런 겁니다.
%f는 실수중에서 소수점까지 표현된 숫자를 받을 수 있는데 다른게 들어오면 무시합니다.

그래서 ./hello를 치고
x를 치고 엔터를 누르면 무시해버립니다.
그래서 printf에서 1.25를 출력하는거고요
만약 x 대신 10.5를 입력하고 엔터치면 10.5가 나올겁니다.