SD card data acquisition

I am trying to convert the analog data coming from the pressure to voltage. The parameters should be 0.5Vdc to 4.5Vdc. The code I've uploaded has all the sensor data coming in as int.

void dataLog()
{
  char buf1[200];

  //Pressure transducers
  int PT1A;
  int PTT1;
  int PT1B;
  int PT1C;

  float vPT1A = 0.0;
  float vPTT1 = 0.0;
  float vPT1B = 0.0;
  float vPT1C = 0.0;

  // Sets values of incoming analog pin data to transducer numbers
  PT1A = analogRead(A0); // Reads data from analog pin A0
  PTT1 = analogRead(A1); // Reads data from analog pin A1
  PT1B = analogRead(A2); // Reads data from analog pin A2
  PT1C = analogRead(A3); // Reads data from analog pin A3


// Converts analog data to Vdc
  vPT1A = PT1A * (5.0 / 1023.0);
  vPTT1 = PTT1 * (5.0 / 1023.0);
  vPT1B = PT1B * (5.0 / 1023.0);
  vPT1C = PT1C * (5.0 / 1023.0);

  sprintf(buf1, "PT1A: %.2f; PTT1: %.2f; PT1B: %.2f; PT1C: %.2f",
          vPT1A, vPTT1, vPT1B, vPT1C);


  Serial.println(buf1);

}

With the current format above i get ? instead of numbers/data. I have also tried changing my variables from floats to doubles. The only thing that seems to work is changing

from:

  double vPT1A = 0.0;
  double vPTT1 = 0.0;
  double vPT1B = 0.0;
  double vPT1C = 0.0;

to:

  int vPT1A = 0.0;
  int vPTT1 = 0.0;
  int vPT1B = 0.0;
  int vPT1C = 0.0;

But even then the decimal becomes truncated making the data useless if the Vdc drops below 1.0. Seeing as the parameters should be 0.5Vdc to 4.5Vdc this causes a major issue. Can can anyone help point me in the right direction