




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
《C語言程序設計》教案課程名稱C語言程序設計任課教師總課時64教學課題文件的讀寫授課班級授課日期課時2教學目標知識目標:1.掌握文本文件和二進制文件的讀寫方法。能力目標:能夠熟練掌握文件的基本操作素質目標:團隊合作能力、團隊互助,自我學習的習慣重點難點文本文件和二進制文件的讀寫教學方法演示、講解、啟發教學資源教材《C語言程序設計》設備準備VC++6.0,極域電子教室軟件,分發工作任務單教學環節(教學過程)教學內容教師活動學生活動教學目標課時1演示項目效果通過教室軟件演示程序執行結果傾聽、觀看、思考、陳述給學生演示任務結果10分鐘2理論講解講授文本文件和二進制文件的讀寫方法講授預備需要的理論知識15分鐘3舉例通過一個案例進一步講解文本文件和二進制文件的讀寫方法講授、演示通過實際應用幫助學生理解理論知識20分鐘4應用布置兩個相關題目輔導、答疑通過做相關練習題幫助學生更好的理解相關知識45分鐘教學內容(詳細):1.文本文件的讀寫C語言提供以字符方式讀寫文件的函數有:1)寫字符函數intfputc(charch,FILE*fp)2)讀字符函數intfgetc(FILE*fp)3)寫字符串函數intfputs(char*string,FILE*fp)4)讀字符串函數char*fgets(char*string,intn,FILE*fp)(1)寫字符函數寫字符函數fputc()的原型如下:intfputc(charc,FILE*fp)fputc()函數的一般形式如下:ch=fputc(ch,fp);功能:將字符型變量ch的內容寫入文件指針fp所指定的文件中。返回值:若成功,則返回寫的字符ch;若出錯,返回為EOF(-1)。(2)讀字符函數讀字符函數fgetc()的原型如下:intfgetc(FILE*fp);fgetc()函數的一般形式如下:ch=fgetc(fp);功能:從文件指針fp所指文件中讀取一個字符。(3)寫字符串函數intfputs(char*string,FILE*fp)fputs()函數的一般形式如下:ch=fputs(str,fp);功能:將一個字符串寫到文件指針fp所指的文件中。(4)讀字符串函數char*fgets(char*string,intn,FILE*fp)fgets()函數的一般形式如下:fgets(str,n,fp);功能:從文件指針fp所指的文件中讀取一個字符串。2.二進制文件的讀寫多數文件是以二進制方式存儲,且需要對整塊數據進行讀寫。下面介紹塊讀寫函數fread()和fwrite()。(1)寫數據塊函數fwrite()函數的一般形式如下:fwrite(buffer,size,count,fp);功能:將一組數據輸出到指定的磁盤文件中。(2)讀數據塊函數fread()函數的一般形式如下:fread(buffer,size,count,fp);功能:從指定的文件中讀入一組數據。3.文本文件的格式化讀寫文件的格式化輸入/輸出函數fscanf()/fprintf(),與前面介紹的scanf()/printf()函數的作用類似,都是用來實現格式化讀寫操作,不同的是fscanf()/fprintf()的讀寫對象是磁盤文件,而不是屏幕。(1)格式化寫函數fprintf()函數的一般形式如下:intfprintf(FILE*fp,char*format[,argument,…])功能:按format規定的格式把數據寫入文件指針fp所指文件中。其中format參數的含義與printf是相同的。(2)格式化讀函數fscanf()函數的一般形式如下:intfscanf(FILE*fp,char*format[,argument,…])功能:從文件指針fp所指文件中按format規定的格式把數據讀入參數argument中。其中format參數的含義與scanf是相同的。4.其他讀寫函數(1)putw()和getw()函數1)格式:putw(intw,FILE*fp)getw(FILE*fp)2)功能:以二進制形式,從磁盤文件讀寫一個int型的整數,4個字節。3)返回值:成功時返回所寫的整數值;失敗時返回值為EOF。例如:putw(10,fp);i=getw(fp);(2)fgets和fputs函數1)格式:fgets(str,n,fp);(str字符數組,n-1個字符)fputs(字符串,fp);("\0"不輸出)2)功能:從fp指向的文件讀/寫一個字符串。3)返回值:fgets()正常時返回字符串的首地址;出錯或文件尾,NULL。fputs()正常時返回寫入的最后一個字符;出錯為EOF。5.文件的定位與隨機讀寫前面講述的對文件讀寫操作是從文件的開始位置讀寫的,每進行一次讀寫操作,文件的讀寫位置都自動發生改變。例如,讀寫一個字符后,文件指針自動移向下一個字符位置。文件中有一個位置指針,指向當前讀寫的位置。具體位置由文件打開方式確定。一般“r”、“w”指向文件頭,“a”指向文件尾。當順序讀寫一個文件時,每讀寫完一個數據單位(一個字符,或一個整數,或一個結構體變量)后,位置指針自動移向下一個數據單位位置,如果想改變這種順序,就需要強制使位置指針指向指定的位置。在對文件讀寫操作時,往往不需要從頭開始,只需對其中指定的內容進行讀寫操作,這時我們可以調用庫函數來改變文件的讀寫位置,這種函數稱為文件的定位函數,一般用rewind()和fseek()函數實現。文件的讀寫方式一般有兩種:1)順序讀寫:位置指針按字節位置順序移動。2)隨機讀寫:位置指針按需要移動到任意位置。(1)rewind()函數格式:rewind(fp);功能:將文件的讀寫位置指針重新移到文件的開頭。(2)fseek()函數格式:fseek(fp,offset,origin);功能:把文件位置指針移動到指定的位置,以便從當前位置讀寫文件。(3)ftell()函數格式:fell(fp);功能:返回當前文件指針fp的讀寫位置,并用相對文件頭的位移量來表示。常用于保存當前文件指針位置。(4)feof()函數格式:feof(文件指針);功能:用于檢查文件是否結束,如果是,返回1;否則返回0。5)ferror()函數格式:ferror(文件指針);功能:檢查文件在使用各種輸入輸
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 桃樹造林規劃方案范本
- 礦山安全監測與火災防控考核試卷
- 彈簧在汽車油門踏板的反饋和控制性能考核試卷
- 莞城區水庫清淤施工方案
- 證券從業資格證行業競爭策略試題及答案
- 舊房地基維修施工方案
- 水下作業的深海地質研究新技術考核試卷
- 考生必知的知識點證券從業試題及答案
- 2025年投資組合理論試題及答案
- 2024年微生物檢測技師真題及答案
- 2025年04月包頭醫學院公開招聘28名事業單位工作人員筆試歷年典型考題(歷年真題考點)解題思路附帶答案詳解
- 《美的電器審計案例》課件
- 2025-2030中國冰鞋行業市場發展分析與發展趨勢及投資風險研究報告
- 2024年美容師考試相關法律法規知識試題及答案
- 2025新疆交投集團所屬子公司招56人筆試參考題庫附帶答案詳解
- 綜藝節目贊助合同書
- 三級精神病醫院基本標準(2023版)
- 高爾夫球場澆灌施工方案
- 出納員工考核試題及答案
- 節假日期間醫療安全
- 智能交通系統在城市管理中的應用與前景
評論
0/150
提交評論