freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

c程序設(shè)計案例教程(下)ppt-閱讀頁

2024-11-01 03:35本頁面
  

【正文】 將指針數(shù)組中每個指針?biāo)赶虻淖址牡谝粋€字符提取出來,并連接成一個新的字符串返回到調(diào)用處,實現(xiàn)了英文藏頭詩的解密。 ? 表示指向的對象是常量,即指針?biāo)竷?nèi)存中的內(nèi)容是常量,不允許更改。 ? 定義指針常量的指針,只限制指針的間接訪問操作,而當(dāng)指針指向的值本身不是常量時,不能限制指針指向的值本身的操作 ? 指針常量 ? 形式: int * const iPtr。值得注意的是,在定義指針常量時必須初始化,初始化的值是變量地址,不能是常量的地址。 ? 指向常量的指針常量 ? 形式: const int *const iPtr。 ? 指向常量的指針常量是指指針與指針?biāo)赶虻膬?nèi)容都是常量,不允許被修改。 結(jié)構(gòu)體變量的定義有不同的方法,一般可分為三種形式 : 列舉職工工資管理實例 , struct employee employee1, employee2; 2. 定義結(jié)構(gòu)體類型同時定義結(jié)構(gòu)體類型變量 struct employee{ … } employee1 , employee2 ; ,直接定義結(jié)構(gòu)體類型變量 typedef struct employee{ … }emp。 職工工資管理 ,結(jié)構(gòu)體變量實例程序 . 結(jié)構(gòu)體數(shù)組是其元素都是結(jié)具有相同結(jié)構(gòu)體類型的結(jié)構(gòu)體變量組。 ,再定義結(jié)構(gòu)體數(shù)組。 struct employee emp[3]。 struct employee{ … } emp[3] 。指向結(jié)構(gòu)體的指針稱為結(jié)構(gòu)體指針。 結(jié)構(gòu)體類型指針定義的格式有三種: 例 :struct employee *p 例 :struct work{ … } *pwk 。 結(jié)構(gòu)體指針實例程序 . 模擬社會關(guān)系 結(jié)構(gòu)體指針作為函數(shù)參數(shù) 把一個結(jié)構(gòu)體類型的變量或者一個結(jié)構(gòu)體類型的數(shù)組傳給函數(shù),有三種方法: 。 。 ,將結(jié)構(gòu)體變量的地址傳遞給形參。鏈表由一系列結(jié)點(鏈表中每一個元素稱為結(jié)點)組成,結(jié)點可以在運行時動態(tài)生成。 鏈表是利用動態(tài)存儲空間進(jìn)行數(shù)據(jù)存儲的一種結(jié)構(gòu)。具體步驟五步 . 實例程序舉例 . 學(xué)生成績管理的單向鏈表實現(xiàn) 插入結(jié)點 對鏈表的插入是指將一個結(jié)點插入到一個已有的鏈表中。 實例程序舉例 . 遍歷鏈表 遍歷 (Traversal)是指沿著某條搜索路線,依次對樹中每個結(jié)點均做一次且僅做一次訪問。 實例程序解析及運行結(jié)果 習(xí)題九 1.選擇題 2.程序填空 3.寫出程序運行結(jié)果 第 9章 文件 本章要點目標(biāo) ? 將字符串寫入文件中 ? 從文件中讀取學(xué)生基本信息 ? 復(fù)制文件內(nèi)容 ? 管理個人收支記賬本 將字符串 “ Wele to study C program!” 寫入文件 文件的概念 文件是程序設(shè)計中一個重要的概念。一批數(shù)據(jù)是以文件的形式存放在外部介質(zhì) (如磁盤 )上的。要向外部介質(zhì)上存儲數(shù)據(jù)也必須先建立一個文件,才能向它輸出數(shù)據(jù)。根據(jù)數(shù)據(jù)的存儲形式,文件分為文本文件和二進(jìn)制文件。二進(jìn)制文件是把內(nèi)存中的數(shù)據(jù)按其在內(nèi)存中的存儲形式原樣保存到磁盤文件中。用 ASCII碼輸出與字符一一對應(yīng),一個字節(jié)代表一個字符,因而便于對字符進(jìn)行逐個處理,也便于輸出字符。 C語言源程序是文本文件,其內(nèi)容完全由 ASCII碼構(gòu)成,通過記事本等編輯工具可以對文件內(nèi)容進(jìn)行查看、編輯等。對于具體的數(shù)據(jù)應(yīng)該選擇哪一類文件進(jìn)行存儲,由需要解決的問題來決定,并在程序的一開始就確定下來。這些信息是保存在一個結(jié)構(gòu)體變量中的。 2.文件類型指針 文件緩沖區(qū)是內(nèi)存中用于數(shù)據(jù)存儲的數(shù)據(jù)塊,在文件處理過程中,程序需要訪問該緩沖區(qū)實現(xiàn)數(shù)據(jù)的存取。還有,文件緩沖區(qū)由系統(tǒng)自動分配,并不像數(shù)組那樣可以通過數(shù)組名加下標(biāo)來定位。除此之外,在文件操作中還需用到文件的名字、狀態(tài)、位置等信息。在使用完文件之后應(yīng)關(guān)閉該文件,關(guān)閉操作由函數(shù) fclose()完成。 ANSI C規(guī)定了標(biāo)準(zhǔn)輸入輸出函數(shù)庫,用函數(shù) fopen()來實現(xiàn)打開文件操作。 函數(shù) fopen()的原型如下: FILE * fopen(const char * filename, const char * mode)。函數(shù)將返回 filename指定文件的文件指針,當(dāng)發(fā)生錯誤時將返回空指針。 2.文件關(guān)閉函數(shù) fclose() 當(dāng)文件操作完成后應(yīng)及時關(guān)閉它,以防止不正常的操作。如果寫入的數(shù)據(jù)不到 512B,發(fā)生程序異常終止,那么這些緩沖區(qū)中的數(shù)據(jù)將會丟失。 使用函數(shù) fclose()之前應(yīng)在主函數(shù)之前引入標(biāo)準(zhǔn)輸入輸出函數(shù)庫對應(yīng)的頭文件 ,即 include 。函數(shù)關(guān)閉文件指針 fp指向的文件。函數(shù)只需要一個形式參數(shù),文件指針 fp。 if((fp1=fopen(,r))==NULL) { printf( Can not open file \n)。 } if((fp2=fopen(, wb+))==NULL) { printf(Can not open file \n)。 } if(fclose(fp1)) { printf(Can not close file \n)。 } if(fclose(fp2)) { printf(Cannot close file \n)。 } return 0。按照格式控制字符串 format規(guī)定的格式,函數(shù)將變量argument的值寫入文件指針 fp指向的文件中。函數(shù)的形式參數(shù)個數(shù)不定,第一個參數(shù) fp為文件指針;第二個 format為格式控制字符串,其中包括若干個格式控制字符。 【 例 92】 使用函數(shù) fprintf()向文本文件中寫入不同類型的數(shù)據(jù) include include include int main(void) { FILE * fp。 double num=。\n39。 if((fp=fopen(, w)) == NULL) { printf(Can not open file \n)。 } else { fprintf(fp, %s%c%d\n%lf\n, s, c, i, num)。 exit(1)。 } } return 0。 include include int main(void) { FILE * fp。 if((fp=fopen(name, w))==NULL) { printf(Can not open file %s\n, name)。 } else { fprintf(fp, %s,Wele to study C program!)。 exit(1)。 } 讀取學(xué)生基本信息文件 格式化文件讀函數(shù) fscanf 函數(shù) fscanf的原型如下: int fscanf(FILE * fp, const char * format[, argument ]...)。函數(shù)返回讀出的字節(jié)數(shù),當(dāng)讀操作發(fā)生錯誤時返回一個負(fù)值。格式控制字符串 format中有幾個格式控制符,就應(yīng)該有幾個 argument參數(shù)與之配對。 long l。 char s[81]。 if((fp=fopen(, w+))==NULL) { printf(Can not open the file!\n)。 } else { fprintf(fp, %s %ld %f %c,astring, 65000, , 39。)。 fscanf(fp, %s %ld %f %c, s, amp。num, amp。 printf(%s\n%ld\n%f\n%c\n, s, l, num, c)。 } return 0。 include include int main(void) { FILE * fp。 char name[20], sex[2], address[50]。 if((fp=fopen(, w))==NULL) { printf(Can not open the file!\n)。 } fprintf(fp, %ld %s %s %d %s\n, 1, 張三 , 男 , 21, 哈爾濱 )。 fprintf(fp, %ld %s %s %d %s, 3, 王五 , 男 , 22, 上海 )。 exit(1)。 exit(1)。 printf(\n)。no, name, sex, amp。 printf(%ld %s %s %d %s\n, no, name, sex, age, address)。 if(fclose(fp)) { printf(Can not close the file!\n)。 } return 0。 include include int main(void) { FILE * fp1, * fp2。 if((fp1=fopen(, r))==NULL) { printf(Can not open file !\n)。 } if((fp2=fopen(,w))==NULL) { printf(Can not open file !\n)。 } while(!feof(fp1)) { c=fgetc(fp1)。 } fclose(fp1)。 return 0。函數(shù)將字符 c寫入文件指針 fp指向的文件中。 【 例 97】 使用函數(shù) fputc()在顯示器上顯示字符串。 char * p。 while((*p != 39。) amp。 fputc(*(p++), stdout) != EOF)。 } 2.字符方式文件寫函數(shù) fgetc() 函數(shù) fgetc的原型如下: int fgetc( FILE * fp)。若成功執(zhí)行,函數(shù)返回讀到的字符,否則返回 EOF。 源程序見教材 P209。函數(shù)將常量字符指針 string指向的字符串寫入文件指針 fp指向的文件中。 【 例 99】 使用函數(shù) fputs將字符串顯示在顯示器上。 return 0 。函數(shù)從文件指針 fp指向的文件中讀出 n個字符存入字符指針指向的數(shù)組中。 形式參數(shù): stream為文件指針。 include int main(void) { FILE * fp。 if((fp=fopen(, r)) != NULL) { if(fgets(line, 100, fp) == NULL) printf(fgets error \n)。 fclose(fp) 。 } 數(shù)據(jù)塊讀寫函數(shù) fread和 fwrite 函數(shù) fwrite()的原型如下: size_t fwrite(const void * buffer, size_t size, size_t count, FILE * fp)。函數(shù)返回實際寫入文件中的數(shù)據(jù)項個數(shù)。函數(shù)將文件指針 fp指向的文件中 count個大小為size字節(jié)的數(shù)據(jù)項讀入指針 buffer指向的位置。 其他相關(guān)函數(shù) 1.函數(shù) feof() 用于判斷文件的結(jié)尾標(biāo)志。判斷 fp指針是否已經(jīng)到文件末尾,即讀文件是否讀到了文件結(jié)束的位置。 2.函數(shù) rewind() 定位文件讀寫指針,使其指向讀寫文件的首地址,即打開文件時文件讀寫位置指針?biāo)赶虻奈恢?。其調(diào)用格式為: rewind(FILE * fp)。 3.函數(shù) fseek() 該函數(shù)控制指針移動。其中, fp是文件指針, offset表示偏移量,它應(yīng)是long型數(shù)據(jù),使用常量時,應(yīng)加上后綴“ L”, offset可取負(fù)值,表示按相反方向計算偏移量,即為正時表示從當(dāng)前位置向后計算,為負(fù)時從當(dāng)前位置向前計算。例如: fseek(fp, 20L, 0)。 4.函數(shù) ftell() 函數(shù) ftell()用來獲取當(dāng)前文件讀寫指針的位置,即相對于文件開頭的位移量。 5.函數(shù) ferror() 函數(shù) ferror()用來檢查文件在用各種輸入輸出函數(shù)進(jìn)行讀寫是否出錯,若返回值為 0,表示未出錯,否則表示有錯誤。調(diào)用形式為 clearerr(FILE * fp)。
點擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1