fix(opensmt/egraph/Enode.C): fix number output in print_infix

The previous patch using "fixed" notation has a problem. For instance,
when "x = 0.7000", it outputs "0.700001" and it changes result for some
benchmarks, for instance, cardiac_to1_good_3_0.smt2.

This fix is to reuse a string representation if it is already fixed
notation. Only if it is in scientific notation such as 5.0E-3, we
convert it to '0.005'.

We had this problem because CAPD doesn't accept a number in scientific
notation. Qinsi Wang reported this problem and I added a test,
'tests/nra_ode/killerred_3_0.smt2'.
checkpoint