Need help with floating point into array formatting

If it were me, I would do it either like this

  int v2cent = (int)((v2*100.0)+0.5);
  sprintf(v2char, "%02d.%02d", (v2cent/100), (v2cent%100));

or else this

  int v2cent = (int)((v2*100.0)+0.5);
  v2char[0] = (char)('0'+(v2cent/1000)); 
  v2char[1] = (char)('0'+((v2cent/100)%10));
  v2char[2] = '.';
  v2char[3] = (char)('0'+((v2cent/10)%10));
  v2char[4] = (char)('0'+(v2cent%10));
  v2char[5] = 0;

Usual warning: untested code, yadda yadda...