2015-12-04 21 views
0

我試圖在表中對齊多個變量,如輸出。 我目前使用填充,但我看不到如何正確對齊輸出。 我打印變量:添加多於一個額外數字時,Printf未對齊

printf("\n %15s", name); 
printf("%15d", level); 

然後,我多次撥打下一個功能,一切都很好,除非有一個以上的數字。

printf("%11dhr %.1fmn",t,t2); 

enter image description here

+1

'%.1f' - >'4.1% f' – nnn

+0

@nnn這是要進入printf函數,打印t和t2/ –

+0

@nnn謝謝,你可以請張貼這個答案? –

回答

1

具有定義爲int t;float t2;(或double t2;)中的變量,因爲它現在是%.1f打印t2一個位小數點後。這是精度說明符

要進行對齊,還需要包含寬度說明符(要打印的最少字符數,如果可用較少,請用空格填充)。這應該包括小數點和精度數字。所以如果t2整數部分將適合在2個字符打印時,您將需要設置寬度爲4。對於給定的例子,這應該工作:

printf("%11dhr %4.1fmn", t, t2); 
相關問題