



免費(fèi)預(yù)覽已結(jié)束,剩余1頁可下載查看
下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
邵東職業(yè)中專2007年高三C語言習(xí)題第十二章 文件基礎(chǔ)訓(xùn)練一、填空題1、 文件是指_。2、 根據(jù)數(shù)據(jù)的組織形式,C中將文件分為_ASCII碼文件_和_二進(jìn)制文件_兩種類型。3、 現(xiàn)要求以讀寫方式,打開一個文本文件 stu1 ,寫出語句:_FILE *fp fp=fopen(“stu.txt”,”r+”);_。_。4、 現(xiàn)要求將上題中打開的文件關(guān)閉掉,寫出語句:_fclose(fp);_。5、 若要用fopen函數(shù)打開一個新的二進(jìn)制文件,該文件要既能讀也能寫,則打開文件方式字符串應(yīng)該是_fopen(“a.txt”,”wb+”);_。二、選擇題1、若要打開A盤上user子目錄下名為abc.txt的文本文件進(jìn)行讀、寫操作,下面符合此要求的函數(shù)調(diào)用是( ) 。 A) fopen(A:userabc.txt,r) B) fopen(A:userabc.txt,r+)C) fopen(A:userabc.txt,rb) C) fopen(A:userabc.txt,w)2、若fp已正確定義并指向某個文件,當(dāng)未遇到該文件結(jié)束標(biāo)志時函數(shù)feof(fp)的值為( )。A) 0 B) 1 C) 1 D) 一個非0值3、 當(dāng)已經(jīng)存在一個file1.txt文件,執(zhí)行函數(shù)fopen(“file1.txt”,”r+”)的功能是( )。)打開file1.txt文件,清除原有的內(nèi)容;)打開file1.txt文件,只能寫入新的內(nèi)容;)打開file1.txt文件,只能讀取原有內(nèi)容;)打開file1.txt文件,可以讀取和寫入新的內(nèi)容;4、 fread(buf , 64,2,fp)的功能是:( ))從fp所指向的文件中,讀出整數(shù)64,并存放在buf中;)從fp所指向的文件中,讀出整數(shù)64和2,并存放在buf中;)從fp所指向的文件中,讀出64個字節(jié)的字符,讀兩次,并存放在buf地址中;)從fp所指向的文件中,讀出64個字節(jié)的字符,并存放在buf中;5、 以下程序的功能是( ) 。main() FILE * fp; char str=”Beijing 2008”; fp = fopen(“file2”,”w”); fputs(str,fp); fclose(fp);)在屏幕上顯示“Beiing 2008”;)把”Beijing 2008”存入file2文件中;)在打印機(jī)上打印出“Beiing 2008”;)以上都不對;6、 以下程序是建立一個名為myfile的文件,并把從鍵盤輸入字符存入該文件,當(dāng)鍵盤上輸入結(jié)束時關(guān)閉該文件。選擇正確內(nèi)容填空。main() FILE *fp; char c ; char name10; fp=fopen(“myfile”,_”wb”_); do c=getchar(); fputc(c , fp); while(c!=EOF); fclose(fp); (1) A) fgets B)fopen C ) fclose D) fgetc (2) A) “r” B) “r+” C ) “w” D) “w+”三、設(shè)計題1、 編寫一個程序,以只讀方式打開一個文本文件 filea.txt ,如果打開,將文件地址放在fp文件指針中,打不開,顯示“Cannt open filea.txt file n. ”,然后退出。void main() FILE *fp; if(fp=fopen(filea.txt,r)=0); printf()綜合訓(xùn)練一、 填空題1、以下程序段打開文件后,先利用 fseek函數(shù)將文件位置指針定位在文件末尾,然后調(diào)用ftell函數(shù)返回當(dāng)前文件位置指針的具體位置,從而確定文件長度,請?zhí)羁铡?FILE *myf; ling f1;myf= _ (“test.t”,“rb”); fseek(myf,0,SEEK_END); f1=ftel(myf);fclose(myf);printf(“%dn”,f1);2、下面程序把從終端讀入的10個整數(shù)以二進(jìn)制方式寫到一個名為bi.dat的新文件中,請?zhí)羁? #include FILE *fp; main() int i,j; if(fp=fopen(_”bi.dat”_, wb)=NULL) exit(0); for(i=0; i10; i+) scanf(%d,&j); fwrite(&j,sizeof(int),1,_fp_ ); fclose(fp);3、以下程序用來統(tǒng)計文件中字符個數(shù)。請?zhí)羁铡?#include stdio.h main() FILE *fp; long num=0L; if(fp=fopen(fname.dat,r)=NULL) pirntf(Open errorn); exit(0); while( _!feof(fp)_ ) fgetc(fp); num+; printf(num=%1dn,num-1); fclose(fp); 4、以下程序中用戶由鍵盤輸入一個文件名,然后輸入一串字符(用#結(jié)束輸入)存放到此文件文件中形成文本文件,并將字符的個數(shù)寫到文件尾部,請?zhí)羁铡?#include main( ) FILE *fp; char ch,fname32; int count=0; printf(Input the filename :); scanf(%s,fname); if(fp=fopen( _fname_ ,w+)=NULL) printf(Cant open file:%s n,fname); exit(0); printf(Enter data:n); while(ch=getchar()!=#) fputc(ch,fp); count+; fprintf(_ ,n%dn, count); fclose(fp); 5、以下程序的功能是:從鍵盤上輸入一個字符串, 把該字符串中的小寫字母轉(zhuǎn)換為大寫字母,輸出到文件test.txt中,然后從該文件讀出字符串并顯示出來。請?zhí)羁铡?#include main() FILE *fp; char str100; int i=0; if(fp=fopen(text.txt,_)=NULL) printf(cant open this file.n);exit(0); printf(input astring:n); gest(str); while (stri) if(stri=a&stri=z) stri=_ _; fputc(stri,fp); i+; fclose(fp); fp=fopen(test.txt,_); fgets(str,100,fp); printf(%sn,str); fclose(fp); 6、 下面程序由鍵盤輸入字符,存放到文件中,用!結(jié)束輸入,請在_上填空。#include main() FILE *fp; char ch ; char fname10; printf(“Input name of filen”); gets(fname); if (fp=fopen( fname, “w”)=NULL) printf (“cannot open filen”); exit(0) ; printf(“Enter data:n”); while(_!=!) /提示:從鍵盤輸入一個字符,如不是! fputc(_) ; /將從鍵盤輸入的字符存入打開的文件中 fclose(fp);7、下面程序用變量count 統(tǒng)計文件中字符的個數(shù)。請在_中填寫正確內(nèi)容。#include main() FILE *fp;long count =0;if (fp=fopen(“l(fā)etter.txt”,_)=NULL) printf (“cannot open filen”); exit(0) ; while( ! feof (fp) /! feof (fp)- 未到文件尾,為真 /feof()函數(shù)判斷文件指針是否到文件尾,到文件尾,函數(shù)返回非0值,若未到文件尾,函數(shù)返回值0 _; /提示:從文件讀入一個字符 _; printf( “count =%ldn”,count); _; 二、選擇題1、下面的程序執(zhí)行后,文件testt.t中的內(nèi)容是( )。 #include void fun(char *fname.,char *st) FILE *myf; int i;myf=fopen(fname,“w” );for(i=0;istrlen(st); i+)fputc(sti,myf);fclose(myf);main() fun(“test”,“new world”; fun(“test”,“hello,”0;)A)hello, B)new worldhello, C)new world D) hello, rld2、有以下程序#include main() FILE *fp; int i=20,j=30,k,n;fp=fopen(“d1.dat”“w”);fprintf(fp,“%dn”,i);fprintf(fp,“%dn”j);fclose(fp);fp=fopen(“d1.dat”, “r”);fp=fscanf(fp,“%d%d”,&k,&n); printf(“%d%dn”,k,n);fclose(fp);程序運(yùn)行后的輸出結(jié)果是( ) 。 A) 20 30 B) 20 50 C) 30 50 D) 30 203、 若有以下定義和說明:#iinclude struct std char num6; char name8; float mark4;a30;FILE * fp;設(shè)文件中以二進(jìn)制形式存有許多學(xué)生的數(shù)據(jù),且已經(jīng)正確打開,文件指針定位在文件開頭,若要從文件中讀出30個學(xué)生的數(shù)據(jù)放入a數(shù)組中,以下正確的語句是( )。)fread (a , sizeof(struct std),30 , fp) ;)fread (&ai , sizeof(struct std),1 , fp) ;)fread (a +i, sizeof(struct std),1 , fp) ;)fread (a , struct std,30 , fp) ;4、設(shè)有以下結(jié)構(gòu)體類型: struct st char name8; int num; float s4; student 20; 并且結(jié)構(gòu)體數(shù)組student中的元素都已經(jīng)有值,若要將這些元素寫到fp所指向的磁盤文件中,以下不正確的形式是( )。)fwrite (student , sizeof(struct st ),20 , fp) ;)fwrite (student ,20* sizeof(struct st ),1, fp) ;)fwrite (student , 10*sizeof(struct st ),10 , fp);)for (i=0;i20;i+)fwrite (student+i , sizeof(struct st ),1 , fp);5、以下程序是將一個名為old.dat 的文本文件拷貝到一個名為new.dat的新文本文件中,請選擇正確內(nèi)容填空。 #include main() FILE * fp1, *fp2 ; int c ; fp1=fopen(“old.dat”,_);fp2=fopen(“new.dat”,_); c=getc(fp1); while(c!=EOF) fputc(c,fp2) ; c = fgetc(fp1); fclose(fp1); fclose(fp2); A) “r” B ) “r+” C) “rb” D) “rb+” A) “W+ “ B) “wb+” C) “ w” D) “wb”三、問答題1、 什么叫“緩沖文件系統(tǒng)”?四、編程題:1、 從鍵盤輸入一個字符串,將其中的小寫字母全部轉(zhuǎn)換成大寫字母,然后輸出到一個磁盤文件“test ”中保存,輸入的字符串以!表示結(jié)束。參考答案基礎(chǔ)訓(xùn)練一、填空題1、是指存儲在外部介質(zhì)上數(shù)據(jù)的集合 ;2、 ASCII文件和二進(jìn)制文件;3、 FILE * fp ; fp = fopen( “stu”,” r+ ”) ;4、 fclose ( fp);5、 ”wb+”二、選擇題:1、B 2.、A 3、D 4、C 5、B 6、B、C三、編程題:參考答案 main() FILE * fp; If (fp=fopen(“filea.txt”,”r”)=NULL) printf(“Cannt open filea.txt file n” ); exit(0); 綜合訓(xùn)練一、填空題1、fopen2、bi.datfp3、 !feof(fp)4、 fname fp5、 w或w+或wt或w+t或wt+ stri-32 或stri-(a-A或stri-a+A r或r+或r+t或rt+6、 ( ch=getchar() ch , fp7、 r fgetc(fp); count+ fclose(fp);二、選擇題1.、A 2、 A 3、A 4、C 5、 A、C 三、問答題(略)四、編程題 參考答案:#include main()FILE *fp;char str80,filename
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 公司線上祭奠活動方案
- 公司時裝創(chuàng)意秀活動方案
- 公司秋游白交祠策劃方案
- 公司收心活動方案
- 公司活動演講活動方案
- 公司班組文化活動方案
- 公司群眾文體活動方案
- 公司職工團(tuán)日活動方案
- 公司特色活動策劃方案
- 公司注冊選址策劃方案
- 小學(xué)生數(shù)學(xué)邏輯推理題100道及答案解析
- 2023年上海市普通高中學(xué)業(yè)水平合格性考試地理試題及答案
- 基本氣象要素
- 食品安全規(guī)章制度模板打印
- 2024年永平縣小升初全真數(shù)學(xué)模擬預(yù)測卷含解析
- 2002版《水利工程施工機(jī)械臺時費(fèi)定額》
- 山東省菏澤市鄄城縣2023-2024學(xué)年七年級下學(xué)期7月期末英語試題
- 國家開放大學(xué)本科《會計實(shí)務(wù)專題》形考作業(yè)一至四試題及答案
- 安徽省合肥市廬陽區(qū)2022-2023學(xué)年五年級下學(xué)期期末科學(xué)試卷
- 國家開放大學(xué)《土地利用規(guī)劃》本章自測參考答案
- 外賣安全法律知識講座
評論
0/150
提交評論