randはだめでしょ。
どうしてもつかいたければ単体の乱数発行スレッドでメッセージ通信とか
すれば良いと思う。
printfはふつー再入可能じゃないのかなあ。まあ処理系に依存するよ。