1 0は標準入力だから、画面出力には何も影響しない
2 あえて標準入出力を変更する意味があるからやっている

でもそのソースは不要なclose(0)してるのでシロウトが意味を理解せずにマネだけしてる可能性もある
その場合はdup2じゃなくてdup使えば空いてるFDを割り当ててくれる