printfで間違えて%lfとか書いてあったりしますが、
例えば、gccで-ansi -Wallとかやっても警告すらでません。
そのほかにもいくつかのコンパイラでANSI指定してみても、
警告もでないし、正しく実行されます。

しかし、ANSI Cの規格書を読む限り、%lfとした場合の動作は
未定義なので、コンパイラは警告を出すべきだと思いますが、
なぜ出ないんでしょうね。
誰か教えてください。