首頁 考試吧論壇 Exam8視線 考試商城 網絡課程 模擬考試 考友錄 實用文檔 求職招聘 論文下載 | ||
![]() |
2011中考 | 2011高考 | 2012考研 | 考研培訓 | 在職研 | 自學考試 | 成人高考 | 法律碩士 | MBA考試 MPA考試 | 中科院 |
|
![]() |
四六級 | 職稱英語 | 商務英語 | 公共英語 | 托福 | 雅思 | 專四專八 | 口譯筆譯 | 博思 | GRE GMAT 新概念英語 | 成人英語三級 | 申碩英語 | 攻碩英語 | 職稱日語 | 日語學習 | 法語 | 德語 | 韓語 |
|
![]() |
計算機等級考試 | 軟件水平考試 | 職稱計算機 | 微軟認證 | 思科認證 | Oracle認證 | Linux認證 華為認證 | Java認證 |
|
![]() |
公務員 | 報關員 | 銀行從業資格 | 證券從業資格 | 期貨從業資格 | 司法考試 | 法律顧問 | 導游資格 報檢員 | 教師資格 | 社會工作者 | 外銷員 | 國際商務師 | 跟單員 | 單證員 | 物流師 | 價格鑒證師 人力資源 | 管理咨詢師考試 | 秘書資格 | 心理咨詢師考試 | 出版專業資格 | 廣告師職業水平 駕駛員 | 網絡編輯 |
|
![]() |
衛生資格 | 執業醫師 | 執業藥師 | 執業護士 | |
![]() |
會計從業資格考試(會計證) | 經濟師 | 會計職稱 | 注冊會計師 | 審計師 | 注冊稅務師 注冊資產評估師 | 高級會計師 | ACCA | 統計師 | 精算師 | 理財規劃師 | 國際內審師 |
|
![]() |
一級建造師 | 二級建造師 | 造價工程師 | 造價員 | 咨詢工程師 | 監理工程師 | 安全工程師 質量工程師 | 物業管理師 | 招標師 | 結構工程師 | 建筑師 | 房地產估價師 | 土地估價師 | 巖土師 設備監理師 | 房地產經紀人 | 投資項目管理師 | 土地登記代理人 | 環境影響評價師 | 環保工程師 城市規劃師 | 公路監理師 | 公路造價師 | 安全評價師 | 電氣工程師 | 注冊測繪師 | 注冊計量師 |
|
![]() |
繽紛校園 | 實用文檔 | 英語學習 | 作文大全 | 求職招聘 | 論文下載 | 訪談 | 游戲 |
3.4 常用輸出格式符表中格式符的意義
d或i 整型數據以十進制形式輸出
o 無符號整型數據以八進制形式輸出
X 無符號整型數據以十六進制形式輸出
U 元符號整型數據以十進制形式輸出
C 字符的ASCll碼數據,輸出對應的字符
S 輸出字符串
f 以“整數部分.小數部分”形式輸出實型數據
e 以[-]n.nnnnne±xx輸出實型數據
g 以f或e格式輸出
說明:
(1)x格式符同。格式符一樣,把符號位作為數的一部分輸出。對于x格式,用字符a、b、c、d、e、f(或A、B、C、D、E、F)表示9之后的六個十六進制數字符。
(2)一個整數,只要它的位在0-255范圍內,也可以用字符形式輸出,輸出以該整數為ASCII代碼的字符。反之,一個字符數據也可以用整數形式輸出,輸出該字符的ASCII代碼值。
(3)f、e和g格式符用于輸出實型數據,格式轉換時有四舍五人處理。對于f格式,小數點后的數字個數可由格式修飾說明p指定,若p為0,不顯示小數點。用e格式輸出時,對于非0實數,小數點前有一位非零數字,輸出格式中的有效位數可由格式修飾說明p指定;字符e(或E)之后是指數,指數部分至少包含兩個數字。若輸出值的絕對值不小于 1E+100,則指數部分多于兩位數字。
g格式能根據表示數據所需字符的多少自動選擇f格式或e(或E) 格式輸出實數,選擇是以輸出時所需字符數多少為標準。
格式修飾說明有七種,教材只介紹其中四種,它們的意義分別說明如下:
(1)W域寬說明,W是一個十進制整數,表示輸出字段的字符數。若轉換后需要的字符個數比給出的W多,則以實際需要為準;若轉換后需要的字符數比W少,就在左邊用填充字符補足(若給出左邊對齊標志(-),則在右邊補填充字符人通常用空白符作填充字符,若十進制整數W之前有前導0(此0不表示以八進制數給出字段寬度),則以字符0作填充字符。
(2)- 左對齊標志,當轉換后字符個數少于W時,在W所限定的字段寬度內,轉換所得字符列左對齊,右邊補填充符。缺省時,右對齊,左邊補填充符。
(3).p,其中p也是十進制整數。
對于g或e格式輸出,p指明輸出精度(有效數字位數),可以缺省,缺省值依賴于系統的規定(下面的例子設p的缺省值為6)。
對于f格式輸出,p指明輸出字符列的小數點之后的數字個數,可以缺省。
對于S格式輸出,p指明最多輸出字符率的前p個字符,多余截斷。缺省時,字符串的內容全部輸出。
對于d.i、O、u、x和X,表示至少出現的數字個數。
同域寬說明一樣,p也可以是字符*,而實際值由后面一個輸出項的整數值給出,若該值為負值,相當于沒有給出p。
(4) l指明輸出項的類型。
長度修飾符l用于格式符d、i、o、u、X,表示對應的輸出項是長整型或無符號長整型。
以下是格式輸出的一些例子。例如,
int i=1234; long j=1234567L;
printf(”%d,%+6d,%06d,%-6d, %5ld”,i,i,i,i,j)
將輸出:
1234,+1234,00l234,1234,1234567
注意:對于long型數據輸出,必須在格式符之前有長度修飾符l,表明輸出long型數據。
若 int k=045;long p=-1L;printf(”%#o,%4o,%6lo”,k,k,p)
將輸出:
045, 45, 37777777777
而printf("%#x,%4x,%6lx”,k,k,p)將輸出:
0x25, 25, FFFFFFFF
若 unsigned int u= 65535u;prinif(”%d,%4u,%ln’,u,u,p)
將輸出:
-l, 65535, 4294967295
若 char ch1= 045, ch2=’a’;printf(”%c,%-3c,%2c”,ch1,ch2,ch2)
將輸出:
%,a, a
若 char s[]==”ABCDEF’;printf(”%3s,%4.2s,%-7.4s,%.5s”,s,s,s,s)
將輸出:
ABCDEF, AB, ABCD, ABCDE
若 float f=123.4567f; double d=123.456789;
printf(”%.4f,%8.3f,%-7.2f,%.7f",f,f,f,d)
將輸出:
123.4567, 123.457, 123.46, 123.4567890
而 printf(”%.6e,%10.2e,%-10.2e,%.2e,%.9e”,f,f, f,f,d)
將輸出:
1.23457e+02, 1.2e+02,1.2e+02,l.2e+02, 1.23456789e+02
注意:實型數據的有效位數,不要以為凡是打印(顯示)的數字都是準確的。一般地,float型只有7位有效數字,double型有15位有效數字。實際上,因計算過程中的誤差積累,通常不能達到所說的有效位數。
另外,要注意%g格式的特殊性,當它選擇“整數部分.小數部分”形式時,因格式修飾說明.p在e格式中的意義是指明精度,所以p的值是整數部分位數與小數部分位數之和(不是f
格式中的小數位數)。如有
float g1=12.34f,g2=0.0f;
double d=123.456789, g=123456.789;
printf("%g,%G",g1,g2);
printf("%f,%g,%g,%g,%.8g"’,g1,g1,d,g,g)
將輸出:
12.34,0
12.340000,12.34,123.457,123457,123456.79
相關推薦:計算機軟考程序員備考:程序設計知識點(1)北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內蒙古 |