Para gerar números aleatórios em C++, você normalmente faria uso do cabeçalho <random>, que foi introduzido no C++11, oferecendo uma ampla gama de facilidades para gerar números aleatórios de várias distribuições.
<random>
C++ oferece várias maneiras de arredondar números, como floor(), ceil(), e round().
floor()
ceil()
round()
C++ possui uma biblioteca embutida <complex> que facilita o trabalho com números complexos.
<complex>