División de dos enteros para producir un resultado de flotación

Posible duplicado:
¿Por qué no puedo devolver un doble de dos enteros divididos?

Mi progtwig C ++ está truncando la salida de mi definición de entero incluso cuando bash colocar la salida en un flotante. ¿Cómo puedo evitar esto mientras los guardo en variables (ayb) como números enteros?

user@box:~/c/precision$ cat precision.cpp #include  #include  using namespace std; int main() { int a = 10, b = 3; float ans = (a/b); cout<<fixed<<setprecision(3); cout << (a/b) << endl; cout << ans << endl; return 0; } user@box:~/c/precision$ g++ -o precision precision.cpp user@box:~/c/precision$ ./precision 3 3.000