そういえばCで初めてprintf使ってから長らく勘違いしてたんだが
不思議と「関数を使っている」という実感が沸かないんだよな。決まり文句・構文のように感じてしまう

引数とはなんぞ、返り値とはなんぞと理解してから関数として認識すると
自ずとprintfは値で、scanfは参照が必要だということが理解できるんだが