Alright well I'm supposed to make a program that does a few calculations and prints the results but I'm having a problem with the float truncating the answer.

What I have essentialy is (Simplified version):

float = test;

test = 34*pow(10,9);

but instead of test being equal to:

34000000000

it's equal to:

33999998976

Is there any way of fixing this? I tried double which solves the problem however I need to print it as a number without exponents and I can't seem to figure out how to convert double to a float.