首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> C >> C 語言問答

C語言 printf 格式控制符 %6.3f 詳細解析:寬度與精度的精確控制

     編輯:C 語言問答

代碼片段

#define PI 3.14
#define R 2
#include <stdio.h>
main() {
    float s;
    s = PI * R * R;
    printf("mianji=%6.3f", s);
}

%6.3f 逐字符拆解

符號含義本例效果
%格式符起始標記—
6最小寬度:輸出字符總寬度 (含小數點、符號、數字) 至少 6 個字符,不足左側補空格結果佔 6 列
.精度分隔符—
3精度:小數點後保留 3 位數字,四捨五入保留 3 位小數
f類型說明符:float/double 以定點小數形式輸出浮點數格式

實際輸出演示

s = 3.14 * 2 * 2 = 12.56
printf("mianji=%6.3f", s);
輸出: mianji= 12.560
       ↑↑↑↑↑↑
       共 6 字符 (含 1 個前導空格)

若 s = 123.456,輸出 mianji=123.456 (寬度 7,超過 6 時**不截斷**,按實際寬度輸出)。

常見變體對比

格式符含義輸出示例 (值 12.56)
%f默認精度 6,無寬度限制12.560000
%.3f精度 3,無寬度限制12.560
%6.3f寬度 6,精度 3 12.560
%-6.3f左對齊 (負號標記),寬度 612.560
%06.3f不足寬度用 0 填充 (右對齊)012.560

進階:對齊數值報表的實戰技巧

printf("項目      單價    數量    金額\n");
printf("%-10s %8.2f %6d %10.2f\n", "蘋果", 5.50, 100, 550.00);
printf("%-10s %8.2f %6d %10.2f\n", "香蕉", 3.20, 200, 640.00);
/* 輸出整齊對齊的表格 */
項目      單價    數量    金額
蘋果          5.50    100     550.00
香蕉          3.20    200     640.00

總結

%6.3f = 最小寬度 6 + 小數精度 3。掌握「寬度控制對齊、精度控制精確度、標記控制對齊方向/填充字符」三大維度,即可輸出專業級的數值報表。記住:寬度是**最小**值,數據過大時自動擴展,不會截斷。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved