chap3基本資料型態.ppt

  1. 1、本文档共44页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
chap3基本資料型態

Chap 13 輸出格式 孟子曰:「離婁之明,公輸子之巧,不以規矩,不能成方員。師曠之聰,不以六律,不能正五音。」 《孟子﹒離婁篇》 在前幾章中,我們已經多次使用函數setw() 來設定輸出欄位的寬度,讓輸出資料能夠上下對齊,更容易了解。本章將詳細介紹其它設定輸出格式的語法。 Chap 13輸出格式 13.1 使用格式操縱子設定輸出格式 13.2 輸出格式設定間的交互作用 13.3 三種格式設定語法之比較 13.4 檔案儲存格式的設定 13.5 矩陣和向量間的操作 數值輸出格式的四個特性 1. 靠左或靠右對齊 2. 浮點數表示法 / 科學表示法 3. 佔多少欄位 (亦即每筆資料佔有的寬度) 4. 小數點以下的有效位數數目 表13.1.1 常用的格式操縱子 (需要標頭檔 iomanip) 格式操縱子的保持性 除非再次更動,否則以本程式內最近的設 定為準。 有一個例外: 欄寬的設定setw() 必須在 每個送至cout的數值之前使用才有效。 旗標 (flags) 格式操縱子 fixed 也可以寫成 setiosflags (ios::fixed) 這裹ios::fixed這類表示式稱為旗標(flags) 。 運算子「::」稱為範圍運算子 (the scope operator), 或範圍確認運算子 (the scope resolution operator)。 使用這個語法時,using宣告必需寫成 using std::setiosflags; using std::ios; 而不是 using std::fixed; 格式操縱子的實例 setw( ) 的設定規則 範例程式 檔案 Format_1.cpp 操作結果 範例程式Format_2.cpp 範例程式 檔案 Format_2.cpp 操作結果 13.2 輸出格式設定間的交互作用 輸出格式設定的規則 如果不指定showpoint,且原來的數值為整數,則以整數顯示。 如果指定 showpoint,但不指定 fixed 或 scientific,則setprecision 所代表的意義不同。如果precision足夠,則使用fixed,否則使用scientific notation。 在以fixed的方式顯示的情況下,有效位數為小數點前後位數的和。如果以scientific的方式顯示,則指數為負值時有效位數只表示小數點之後的位數,指數為正值時則為小數點前後位數的和。 如果同時指定了fixed或scientific,則setprecision表示的有效位數為小數點之後的位數。 範例程式 檔案 Format_3_Short.cpp (獲得表13.2) 操作結果 如果不考慮名稱可能衝突的問題 上述三種寫法的前置處理指令之後的using指 令都可以簡單地寫成: #include iomanip using namespace std; 這個時候,顯然第二種寫法 (在Format_2.cpp 中的語法) 最簡潔。 13.4 檔案儲存格式的設定 使用資料流 (file stream)的概念,所有的輸出 格式設定語法可以直接套用於檔案的儲存格 式。 在以下的範例程式SaveMatrix.cpp中將以矩陣 (matrix) 的儲存為例。將矩陣的儲存封裝成函數 RecMatrix()。 為了避免矩陣的行數太多,同一列數字無法一 次呈現完畢,以致在顯示時折到下一行影響閱 讀,我們在每一列的前面都加上該列的編號以 玆區別。 範例程式 檔案 SaveMatrix.cpp 操作結果 (執行SaveMatrix.exe在顯示器上會看到下列訊息) 13.5 矩陣和向量間的操作 顯示矩陣和向量。 取出矩陣的某一列或某一行並將它存成向 量。 將向量存到矩陣的某一列或某一行。 範例程式 MatrixRow.cpp 函數ShowMatrix() 和ShowVector() 分別用來 顯示矩陣和向量。 函數PickRow() 用來取出矩陣中選定的一整 列,並將它存成向量。 函數SetCol() 用來將向量存到矩陣中選定的某 一列。 範例程式 檔案 MatrixRow.cpp 操作結果 // SaveMatrix.cpp #include iostream #include iomanip #include fstream using namespace std; const int M = 4; const int N = 5; // --- 函數 RecMatrix() 的宣告 ---------------------

文档评论(0)

maritime5 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档