cで書き直せばずっと分かりやすいよ。