MATLAB: How to make two fprintf statements vertically align each other

fprintf

look at these two big fprintf statements. How can I align data with title?
fprintf('Alt Temp TAS CAS IAS TrueTrack WindD WindV TrueHeading MagVar MagHeading GroundSpeed Dist. Time GPH Cruisefuel CruiseRPM\n' );
fprintf('%.2f %.2f %.2f %.2f %.2f %.2f %.2f %.2f %.2f %.2f %.2f %.2f %.2f %.2f %.2f %.2f %.2f\n',al,te,ktasgph(1),cas,ias,tc,wd,wv,trueheading,mv,magheading,wcaAndgs(2),dist,time,ktasgph(2),cruisefuel,rpm);

Best Answer

fprintf(' Alt Temp TAS CAS IAS TrueTrack WindD WindV TrueHeading MagVar MagHeading GroundSpeed Dist. Time GPH Cruisefuel CruiseRPM\n' );
fprintf('%4.2f %4.2f %4.2f %4.2f %4.2f %9.2f %5.2f %5.2f %12.2f %6.2f %11.2f %11.2f %5.2f %4.2f %3.2f %10.2f %9.2f\n', al, te, ktasgph(1), cas, ias, tc, wd, wv, trueheading, mv, magheading, wcaAndgs(2), dist, time, ktasgph(2), cruisefuel, rpm);
If any of the headings are not as wide as are needed for the numbers to be shown, then add blanks before the heading word and increase the corresponding number after the % by that many blanks. For example you might notice that although 'Alt' is only 3 characters I used %4.2f, because the minimum characters that will be printed if you need two decimal places is 4, which is a leading digit (might be 0), a decimal point, and the two decimal places after the decimal point. If you needed 3 digits before the decimal point for Alt then you would add two more spaces before Alt in the heading and add 2 to the 4 to get %6.2f as the format for that item.