最新版課件最新版課件c語言 (1)_第1頁
最新版課件最新版課件c語言 (1)_第2頁
最新版課件最新版課件c語言 (1)_第3頁
最新版課件最新版課件c語言 (1)_第4頁
最新版課件最新版課件c語言 (1)_第5頁
已閱讀5頁,還剩41頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、首頁第13章 文件13.1 文件概述文件概述13.2 文件的打開與封閉函數(shù)文件的打開與封閉函數(shù)13.3 文件的讀寫函數(shù)文件的讀寫函數(shù)13.4 文件操作的其它常用函數(shù)文件操作的其它常用函數(shù)13.5 文件應(yīng)用程序設(shè)計例文件應(yīng)用程序設(shè)計例首頁13.1 文件概述文件概述一、文件概述一、文件概述信息文件信息文件-似果文件中存放的根基上信息似果文件中存放的根基上信息.程序文件程序文件-似果文件中存放提源程序清單或是編繹毗鄰后似果文件中存放提源程序清單或是編繹毗鄰后 生成的可履行文件生成的可履行文件.磁盤文件磁盤文件-存放在磁盤上存放在磁盤上,封閉統(tǒng)計機后文件仍存在封閉統(tǒng)計機后文件仍存在,下下 次開機次開機

2、,能夠從磁盤文件中讀取信息能夠從磁盤文件中讀取信息.1、文件名:能唯獨標(biāo)織某個磁盤文件的便是磁盤文件名. 盤文件名的一樣組成:盤符:路徑文件主名. 擴展名,文件主名是由字母開頭的字母數(shù)字等字符組成的,長度8個字符.擴展名也是由字母開頭的字母數(shù)字等字符組成的,長度3個字符.首頁2、磁盤文件的打開與封閉往往把從磁盤文件中讀取信息到內(nèi)存稱為“文件的打開”;把內(nèi)存中的信息存回到磁盤文件稱為“文件的封閉”.使用文件要先打開,使用后,必須封閉.3、緩沖文件系統(tǒng)和非緩沖文件系統(tǒng)緩沖文件系統(tǒng):系統(tǒng)自動設(shè)定緩沖區(qū),隨著一個文件夾的打開,自動設(shè)置一段內(nèi)存區(qū)域做為那個文件的緩沖區(qū).非緩沖文件系統(tǒng):系統(tǒng)不自動設(shè)置緩沖

3、區(qū),要求用戶在程序中的打開的文件設(shè)置緩沖區(qū).那個內(nèi)存區(qū)是磁盤文件和程序中存放信息的變量、數(shù)組之間交流信息的緩沖區(qū)域,稱為“文件緩沖區(qū)”.首頁4、磁盤文件的分類按信息標(biāo)準(zhǔn)分類:二進(jìn)制文件、文本文件按讀寫方式分類:次序文件、隨機文件5、設(shè)備文件輸入輸出設(shè)備也算作文件,稱為設(shè)備文件.常用輸入設(shè)備是鍵盤,稱規(guī)格輸入設(shè)備;常用輸出設(shè)備是表現(xiàn)器,稱規(guī)格輸出設(shè)備;還有一個專用于輸犯錯誤信息的規(guī)格錯誤輸出設(shè)備,也是指表現(xiàn)器.從輸入設(shè)備上讀取信息,能夠算作是從輸入設(shè)備文件中讀取信息;將信息寫到輸出設(shè)備上,能夠算作是寫到輸出設(shè)備文件中.首頁C語言規(guī)定語言規(guī)定,對上述三種規(guī)格的輸入輸出設(shè)備履行信息的讀對上述三種規(guī)格

4、的輸入輸出設(shè)備履行信息的讀寫操縱寫操縱,不必事先打開設(shè)備文件不必事先打開設(shè)備文件,操縱后操縱后,也可不必封閉設(shè)也可不必封閉設(shè)備文件備文件.二、文件型指針二、文件型指針C語言規(guī)定文件類型是一種特別的語言規(guī)定文件類型是一種特別的“結(jié)構(gòu)型結(jié)構(gòu)型”.對那個結(jié)構(gòu)類型對那個結(jié)構(gòu)類型,系統(tǒng)差不多在名為系統(tǒng)差不多在名為“stdio.h”的頭文件中按下列標(biāo)準(zhǔn)履行了定義的頭文件中按下列標(biāo)準(zhǔn)履行了定義: typedef struct int _fd; int _cleft; int _mode; char *nextc; char *buff; FILE; 首頁用“FILE”定義的指針變量往往稱為“文件型指針”,是

5、專用于文件操作的.文件型指針的定義方式似下: FILE *文件型指針名1,*文件型指針名2,. ;其中的“文件型指針名”是用戶拔取的標(biāo)識符.返回首頁13.2 文件的打開與封閉函數(shù)文件的打開與封閉函數(shù)一、打開文件函數(shù)一、打開文件函數(shù)【函數(shù)頭】 FILE *fopen(char *filename,char *mode)【指標(biāo)】filename 字符型指針,指向的字符串是要打開的磁盤 文件名. mode 字符型指針,指向的字符串是文件使用的方 式. 這兩個指標(biāo)對應(yīng)的實參能夠是字符串常量,也能夠是字符數(shù)組首地址,大概是指向字符串的指針變量.首頁文件使用方式能夠是下列字符串: r 打開一個差不多存在的

6、文本文件,只能讀取信息.w 打開一個文本文件,只能寫入信息. 如果文件不存在,那么自動創(chuàng)站一個新文件同意寫入信息; 如果文件已存在,那么去掉舊文件,創(chuàng)站一個同名新文件, 同意寫入的信息. a 打開一個已存在的文本文件,只能寫入信息同時且追加 在文件尾部.“r+” 打開一個已存在的文本文件,能夠讀取信息,也能夠 寫入信息.w+ 打開一個文本文件,能夠讀取信息,也能夠?qū)懭胄畔? 如果文件不存在,那么自動創(chuàng)站一個新文件同意寫入信息; 如果文件已存在,那么去掉舊文件,創(chuàng)站一個同名新文件, 同意寫入的信息. a+ 打開一個差不多存在的文本文件,能夠讀取信息,也能夠 寫信息到文件尾部.首頁rb 打開一個差

7、不多存在的二進(jìn)制文件,只能讀取信息.wb 打開一個二進(jìn)制文件,只能寫入信息. 如果文件不存在,那么自動創(chuàng)站一個新文件同意寫入信息; 如果文件已存在,那么去掉舊文件,創(chuàng)站一個同名新文件, 同意寫入的信息. ab 打開一個已存在的二進(jìn)制文件,只能寫入信息同時且追 加在文件尾部. rb+ 打開一個已存在的二進(jìn)制文件,能夠讀取信息,也可 以寫入信息. wb+ 打開一個二進(jìn)制文件,能夠讀取信息,也能夠?qū)懭胄畔? 如果文件不存在,那么自動創(chuàng)站一個新文件同意寫入信息; 如果文件已存在,那么去掉舊文件,創(chuàng)站一個同名新文件, 同意寫入的信息. ab+ 打開一個差不多存在的二進(jìn)制文件,能夠讀取信息,也可 以寫信息

8、到文件尾部.首頁【功能】以mode指定的“使用方式”,打開filename指定的“文件名”對應(yīng)的文件,同時自動給該文件安排一個內(nèi)存緩沖區(qū).【返回值】能精確打開指定的文件,那么返回一個指向“文件型變量”的地址;似果打開文件表現(xiàn)錯誤,返回值為“NULL”,示意打開文件錯誤.“NULL”代表空,其值為“0”. 在文件打開之前,應(yīng)該定義文件型指針,以便同意打開文件函數(shù)返回的地址.打開文件時,一樣要對返回值履行判斷,似果返回值為“NULL”,那么示意文件打開犯錯,不能使用那個文件,應(yīng)提示用戶,同時中止程序的運行.首頁二、封閉文件函數(shù)二、封閉文件函數(shù)【函數(shù)頭】int fclose(FILE *fp)【指標(biāo)

9、】 fp 文件型指針,通過fopen()函數(shù)獲得的、 已指向某個打開的文件.【功能】 封閉fp所指向的文件,同時自動釋放安排給 文件的內(nèi)存緩沖區(qū).【返回值】 能精確封閉指定的文件,那么返回0;否那么返回非0.首頁下面的程序講明了文件的打開與封閉的常用方式:#include stdio.h FILE *fp; . . . if (fp=fopen(文件名文件名,文件使用方式文件使用方式)=NULL) printf(file can not open!n); exit(0); . . . fclose(fp);首頁三、規(guī)格設(shè)備文件的打開與封閉三、規(guī)格設(shè)備文件的打開與封閉三種規(guī)格輸入輸出設(shè)備的使用不

10、必事先打開對應(yīng)的設(shè)備文件,因為在系統(tǒng)啟動后,已自動打開這三個設(shè)備文件,同時且為它們各自設(shè)置了一個文件型指針,標(biāo)題似下: 規(guī)格設(shè)備標(biāo)題 對應(yīng)文件型指針名 規(guī)格輸入設(shè)備(鍵盤) stdin 規(guī)格輸出設(shè)備(表現(xiàn)器) stdout 規(guī)格錯誤輸出設(shè)備(表現(xiàn)器) stderr返回首頁13.3 文件的讀寫函數(shù)文件的讀寫函數(shù)一、文件尾檢驗函數(shù)一、文件尾檢驗函數(shù)【函數(shù)頭】 int feof(FILE *fp)【指標(biāo)】 fp 文件型指針,通過fopen( )函數(shù)獲得的, 已指向某個打開文件.【功能】 檢驗fp所指向的文件是否到達(dá)文件尾.是文件 尾返回非0,否那么返回0.【返回值】如果當(dāng)前是文件尾,返回非0,否那么

11、返回0.首頁二、字符讀寫函數(shù)二、字符讀寫函數(shù)1、寫字符函數(shù)【函數(shù)頭】 int fputc(char ch,FILE *fp)【指標(biāo)】 ch 寫到文件中的字符,能夠是字符常量、字符 變量等. fp 文件型指針,通過fopen( )函數(shù)獲得的、已 指向某個打開的可寫文件.該文件能夠是文本 文件,也能夠是二進(jìn)制文件.【功能】 將ch中的字符寫到fp所指向的文件的當(dāng)前位置. 【返回值】 精確,那么返回剛寫到文件中的字符;錯誤,那么返 回EOF(符號常量,其值為1).首頁例 1 從鍵盤輸入10個字符,寫到a盤根目錄下名為“char2.txt”的文本文件中.程序清單似下: #include stdio.h

12、 main( ) FILE *fp; int i; char c; if(fp=fopen(a:char2.txt,w)=NULL) printf(file can not open!n); exit(0); for(i=0;i10;i+) c=getchar( ); fputc(c,fp); fclose(fp); 首頁2、讀字符函數(shù)【函數(shù)頭】 int fgetc(FILE *fp)【指標(biāo)】 fp 文件型指針,通過fopen( ) 函數(shù)獲得的、 已指向某個打開的可讀文件.該文件能夠 是文本文件、也能夠是二進(jìn)制文件.【功能】 從fp所指向的文件當(dāng)前位置讀取單個字符.【返回值】 精確,那么返回讀

13、取的單個字符;錯誤,那么 返回EOF(1).首頁例2 從a盤根目錄下名為“char2.txt”的文本文件中讀取前10個字符,依次表此刻屏幕上.似果文本文件中不足10個字符,那么有幾個字符讀取同時表現(xiàn)幾個字符.程序清單似下:#include stdio.hmain( )FILE *fp; int i; char c; if(fp=fopen(a:char2.txt,r)=NULL) printf(file can not open!n); exit(0); 首頁for(i=0;i10;i+) if (feof(fp)break; c=fgetc(fp); putchar(c); fclose(f

14、p);例3 編一個函數(shù)完成文本文件的復(fù)制,源文件和意圖文件名做為函數(shù)指標(biāo).函數(shù)清單似下:#include stdio.h void my_copy(fname1,fname2) char *fname1; char *fname2;首頁 FILE *fp1,*fp2; if(fp1=fopen(fname1,r)=NULL) printf(file can not open!n); exit(0); if(fp2=fopen(fname2,w)=NULL) printf(file can not open!n); exit(0); while(!feof(fp1) fputc(fgetc(fp

15、1),fp2); fclose(fp1); fclose(fp2); return; 首頁三、字符串讀寫函數(shù)三、字符串讀寫函數(shù)讀寫字符函數(shù)操作的文件類型是文本文件,讀寫的信息是以字符串的單位.1、寫字符串函數(shù)【函數(shù)頭】int *fputs(char *str,FILE *fp)【指標(biāo)】 str字符型指針,能夠是字符串常量,或存放待輸 出字符串的字符數(shù)組首地址,也能夠是指向待輸 出字符串的指針變量. fp文件型指針,通過fopen( )函數(shù)獲得的、已指向 打開的可寫文本文件.【功能】 將str指向的一個字符串,舍去結(jié)束標(biāo)記0后寫入 fp所指向的文件中.首頁【返回值】精確,那么返回寫入文件的現(xiàn)實字

16、符數(shù);錯誤, 那么返回EOF(1).例4 從鍵盤上讀取3個字符串,依次寫入a盤根目錄下名為“string1.txt”的文本文件.程序清單似下:#include stdio.h main( ) FILE *fp; int i; char s13100,s23100; for(i=0;i3;i+) gets(s1i); if(fp=fopen(a:string1.txt,w)=NULL) printf(file can not open!n); exit(0); 首頁 for (i=0;i3;i+) fputs(s1i,fp); fclose(fp); 2、讀字符串函數(shù)【函數(shù)頭】char *fge

17、ts(char *str,int n,FILE *fp)【指標(biāo)】 str 字符型指針,能夠是存放字符串的字符數(shù)組 首地址,也能夠是指向某個能存放字符串的 內(nèi)存區(qū)域的指針變量. n 整型,能夠是整型常量、變量或表達(dá)式. fp 文件型指針,通過fopen( )函數(shù)獲得的、已指 向打開的可讀文本文件.首頁【功能】從fp所指向的文件當(dāng)前位置讀取n1個字符,在其后增補一個字符串結(jié)束標(biāo)記0,組成字符串同時存入str指定的內(nèi)存區(qū).似果讀取的前n1個字符時有“回車符”,那么只讀到回車符為止,增補結(jié)束標(biāo)記0組成字符串(包羅回車符),回車符后的字符將不再讀取.似果讀取的前n1個字符時遇到文件尾,那么將讀取的字符背

18、面增補結(jié)束標(biāo)記0組成字符串.【返回值】精確,那么返回str對應(yīng)的地址;錯誤,那么返回NULL(0). 當(dāng)精確地讀取了1個字符串后,文件內(nèi)部指針會自動后移1個字符串的位置.首頁例5 從a盤根目錄下名為“string1.txt”的文本文件中讀取一個字符串或前20個字符組成字符串,同時表此刻屏幕上.程序清單似下:#include stdio.h main( ) FILE *fp; char s21; if(fp=fopen(a:string1.txt,r)=NULL) printf(file can not open!n); exit(0); fgets(s,21,fp); fputs(s,stdo

19、ut); fclose(fp); 首頁 固然能夠使用往常講解的puts( )函數(shù)將字符串輸出到表現(xiàn)器,但fputs( )函數(shù)在輸出時是舍舍了那個結(jié)束標(biāo)記0.四、信息讀寫函數(shù)四、信息讀寫函數(shù) 讀寫信息函數(shù)操作的文件類型主假如二進(jìn)制文件,也能夠是文本文件(信息是字符型).讀寫的信息能夠是字符型、整型、實型,也能夠是結(jié)構(gòu)型等.1、寫信息函數(shù)【函數(shù)頭】int fwrite(char *buf,unsigned size,unsigned n,FILE *fp)首頁【指標(biāo)】buf 字符型指針,能夠是存放信息的變量地址或數(shù)組 首地址,也能夠是指向某個變量或數(shù)組的指針變 量. size 無符號整型,能夠是整

20、型常量、變量或表達(dá)式. 代表寫入文件的每個信息所占用的字節(jié)總數(shù).通 常使用表達(dá)式“sizeof(信息類型符)”. n 無符號整型,能夠是整型常量、變量或表達(dá)式. 代表寫入文件的信息的個數(shù)(注重每個信息是 size個字節(jié)). fp 文件型指針,通過fopen( )函數(shù)獲得的、已指向打 開的可寫文件.首頁【功能】將buf指向的n個信息(每個信息的字節(jié)數(shù)為size)寫入fp指向的文件.【返回值】精確,那么返回n值;錯誤,那么返回NULL(0). 當(dāng)精確地寫入文件n個信息后,文件內(nèi)部指針會自動后移nsize個字節(jié)的位置.例6 從鍵盤上讀取10個整型信息,寫入a盤根目錄下名為“intb1.dat”的二進(jìn)

21、制信息文件中.程序清單似下:首頁#include stdio.h main( ) FILE *fp; int a10,*p=a; if(fp=fopen(a:intb1.dat,wb)=NULL) printf(file can not open!n); exit(0); while(pa+10) scanf(%d,p+); fwrite(a,sizeof(int),10,fp); fclose(fp); 首頁2、讀信息函數(shù)【頭函數(shù)】int fread(char *buf,unsigned size,unsigned n,FILE *fp)【指標(biāo)】buf 字符型指針,能夠是存放信息的變量地址或

22、數(shù)組 首地址,也能夠是指向某個變量或數(shù)組的指針變 量. size 無符號整型,能夠是整型常量、變量或表達(dá)式. 代表讀取文件的每個信息所占用的字節(jié)總數(shù).通 常使用表達(dá)式“sizeof(信息類型符)”. n 無符號整型,能夠是整型常量、變量或表達(dá)式. 代表讀取文件的信息(size個字節(jié))的個數(shù). fp 文件型指針,通過fopen( )函數(shù)獲得的、已指向打 開的可讀文件.首頁【功能】從fp所指向的文件當(dāng)前位置讀取n個信息,每個信息的 字節(jié)數(shù)為size,共組成n個長度為size的信息存入but指 定的內(nèi)存區(qū).【返回值】精確,那么返回n值;錯誤,那么返回NULL(0). 當(dāng)精確地讀取了n個信息后,文件內(nèi)

23、部指針會自動后移nsize個字節(jié)的位置.例7 從a盤根目錄下名為“intb1.dat”的二進(jìn)制信息文件中讀取10個整數(shù),輸出到表現(xiàn)器上.程序清單似下:首頁#include stdio.h main( ) FILE *fp; int i,a10; if (fp=fopen(a:intb1.dat,rb)=NULL) printf(file can not open!n); exit(0); fread(a,sizeof(int),10,fp); for (i=0;i10;i+) printf(%d ,ai); fclose(fp); 返回首頁13.4 文件操作的其它常用函數(shù)文件操作的其它常用函數(shù)

24、1、文件頭定位函數(shù)【函數(shù)頭】int rewind(FILE *fp) 【指標(biāo)】 fp 文件型指針,通過fopen( )函數(shù)獲得的、已指向某 個打開的文件.【功能】 將文件內(nèi)部指針置于fp所指向的文件開頭.【返回值】精確,返回0;錯誤,返回非0.例8 復(fù)制a盤當(dāng)前目錄下名為“char2.txt”的文本文件到b盤根目錄下,文件名一樣.接著再表現(xiàn)這兩個文件中的內(nèi)容.程序清單似下:首頁 #include stdio.h main( ) FILE *fp1,*fp2; char c; char *fname1=a:char2.txt,*fname2=b:char2.txt; if (fp1=fopen(

25、fname1,r)=NULL) printf(file can not open!n); eixt(0); if (fp2=fopen(fname2,w)=NULL) printf(file can not open!n); eixt(0); while (!feof(fp1) c=fgetc(fp1); fputc(c,fp2); rewind(fp1);首頁 while (!feof(fp1) putchar(fgetc(fp1); fclose(fp2); if (fp2=fopen(fname2,r)=NULL) printf(file can not open!n); exit(0)

26、; while (!feof(fp2) putchar(fgetc(fp2); fclose(fp1); fclose(fp2); 首頁2、文件隨機定位函數(shù)【函數(shù)頭】int fseek(FILE *fp,long offset,int from)【指標(biāo)】fp 文件型指針,通過fopen( )函數(shù)獲得的、已指向 某個打開的文件. offset 長整型表達(dá)式,示意從from為起始位置的偏移字 節(jié)數(shù).能夠取正數(shù)(向文件尾方向移動)、 0(不移動)、負(fù)數(shù)(向文件頭方向移動). from 確定起始位置的指標(biāo).能夠拔取下列整型數(shù)或標(biāo)題: 整數(shù) 0 1 2 標(biāo)題 SEEK_SET SEEK_CUR SEEK

27、_END 起始位置 文件頭 內(nèi)部指針的當(dāng)前位置 文件尾首頁【功能】將fp所指向的文件內(nèi)部指針從from指定的起始位置移動offset個字節(jié),指向新的位置.【返回值】精確,返回0;錯誤,返回非0.例似: fseek(fp,20L,1) 示意從當(dāng)前位置后移20個字節(jié)的 位置; fseek(fp,-10L,SEEK_END) 示意從文件尾最從前移10 個字節(jié)的位置.注重,偏移量似果使用常數(shù),那么必須是長整型的,即整數(shù)后要加“L”,或“l(fā)”.似果使用表達(dá)式,能夠用“(long)(表達(dá)式)”強制變形成長整型.首頁例9 設(shè)a盤根目錄下有一個名為“intb1.dat”的二進(jìn)制文件,其中接連存放了10個整數(shù).

28、要求讀取同時表現(xiàn)其中第1、3、5和第9、10個信息.程序清單似下:#include stdio.h main( ) FILE *fp; int i,x; if(fp=fopen(a:intb1.dat,rb)=NULL) printf(file can not open!n); exit(0); for(i=0;i3;i+) fseek(fp,(long)(i*sizeof(int),0); fread(&x,sizeof(int),1,fp); printf(%d.%dn,2*i+1,x); 首頁 fseek(fp,-2L*sizeof(int),SEEK_END); fread(&

29、amp;x,sizeof(int),1,fp); printf(%d.%dn,9,x); fseek(fp,-1L*sizeof(int),SEEK_END); fread(&x,sizeof(int),1,fp); printf(%d.%dn,10,x); fclose(fp); 首頁3、錯誤檢驗函數(shù)【函數(shù)頭】int ferror(FILE *fp)【指標(biāo)】fp 文件型指針,通過fopen( )獲得的、已指向某個打 開的文件.【功能】檢驗fp所指向的文件在近來一次的操縱(包羅讀寫、 定位等)時是否產(chǎn)生錯誤.有錯,那么返回非0值;無 錯,那么返回0值.【返回值】無錯誤,返回0;有錯誤,

30、返回非0.例10 重編上例的程序.要求使用錯誤檢驗函數(shù)來推斷文件操縱中是否產(chǎn)生錯誤.程序清單似下:首頁#include stdio.h void pro_err(fp) FILE *fp; if (ferror(fp)!=0) printf(file can not open!n); exit(0); else return; main( ) FILE *fp; int i,x; if(fp=fopen(a:intb1.dat,rb)=NULL) printf(file can not open!n); exit(0); 首頁for(i=0;i3;i+) fseek(fp,(long)(i*sizeof(int),0); pro_err(fp); fread(&x,sizeof(int),1,fp); pro_err(fp); printf(%d.%dn,2*i+1,x); fseek(fp,-2L*sizeof(int),SEEK_END); pro_err(fp); fread(&x,sizeof(int),1,fp); pro_err(fp); printf(%d.%dn,9,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論