版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
一、試驗(yàn)內(nèi)容完成《C〔第四版〕12文件操作(P267)。二、試驗(yàn)?zāi)康膶W(xué)習(xí)對(duì)文件的輸入輸出三、試驗(yàn)過程與步驟VisualC++建立一個(gè)把握臺(tái)工程在工程中建立源文件并編寫程序編程后編譯,假設(shè)消滅編譯錯(cuò)誤則應(yīng)當(dāng)檢查錯(cuò)誤并改正運(yùn)行程序并觀看結(jié)果并記錄四、程序分析
10-1從鍵盤輸入一些字符,逐個(gè)把它們送到磁盤上去,直到用戶輸入一個(gè)“#”為止#include<stdio.h>intmain{FILE*fp;請輸入所用的文件名:“);scanf(“%s“,filename);if((fp=fopen(filename,“w“))==NULL) //fp指向此文件{假設(shè)翻開時(shí)出錯(cuò),就輸入“打不開”的信息exit(0); 終止程序}ch=getchar; printf(請輸入一個(gè)預(yù)備存儲(chǔ)到磁盤的字符串(以#完畢):“);ch=getchar; 接收從鍵盤輸入的第一個(gè)字符while(ch!=”#”) //當(dāng)輸入‘#’時(shí)完畢循環(huán){fputc(ch,fp); //向磁盤文件輸出一個(gè)字符putchar(ch); 將輸出的字符顯示在屏幕上ch=getchar; 再接收從鍵盤輸入的一個(gè)字符}fclose(fp);putchar(10); //關(guān)閉文件return0; 向屏幕輸出一個(gè)換行符}試驗(yàn)結(jié)果:10-2file1.dat文件中的file2.dat中。#include<stdio.h>#include<stdlib.h>intmain{FILE*in,*out; //FILEcharch,infile[10],outfile[10]; //定義兩個(gè)字符數(shù)組,分別存放兩個(gè)數(shù)據(jù)文件名printf(“輸入讀入文件的名字:“);scanf(“%s“,infile); //輸入一個(gè)輸入文件的名字printf(“輸入輸出文件的名字:“);scanf(“%s“,outfile); //輸入一個(gè)輸出文件的名字if((in=fopen(infile,“r“))==NULL) //翻開輸入文件{printf(“無法翻開此文件\n“);exit(0);}if((out=fopen(outfile,“w“))==NULL) //翻開輸出文件{printf(“無法翻開此文件\n“);exit(0);}while(!feof(in)) //假設(shè)未遇到輸入文件的完畢標(biāo)志{ch=fgetc(in); //chfputc(ch,out); //chputchar(ch); //ch}putchar(10); //顯示完全部字符后換行fclose(in); //關(guān)閉輸入文件fclose(out); //關(guān)閉輸出文件return0;}試驗(yàn)結(jié)果:10-5#include<stdio.h>intmain{FILE*fp1,*fp2;fp2=fopen(“file2.dat“,“w“);putchar(getc(fp1));putchar(10);rewind(fp1);putc(getc(fp1),fp2);fclose(fp1);fclose(fp2);return0;}試驗(yàn)結(jié)果10-6#include<stdio.h>#include<stdlib.h>structstduent_type{charname[10];intnum;intage;charaddr[15];}stud[10];intmain{inti;FILE*fp;if((fp=fopen(“stu.dat“,“rb“))==NULL){printf(“cannotopenfile\n“);exit(0);}for(i=0;i<10;i+=2){fseek(fp,i*sizeof(structstduent_type),0);stduent_type),1,fp);printf(“%-10%4d%4d%-15\n“,stud[i].name,stud[i].num,stud[i].age,stud[i].addr);}fclose(fp);return0;}試驗(yàn)結(jié)果試驗(yàn)12-2〔1〕源代碼:#include<stdio.h>structstudent{charnum[10];charname[8];intscore[3];floatave;}stu[5];intmain{inti,j,sum;FILE*fp;for(i=0;i<5;i++){printf(“\ninputscoreofstudent%d:\n“,i+1);printf(“NO.:“);scanf(“%s“,stu[i].num);printf(“name:“);scanf(“%s“,stu[i].name);sum=0;for(j=0;j<3;j++){printf(“score%d:“,j+1);scanf(“%d“,&stu[i].score[j]);sum+=stu[i].score[j];}stu[i].ave=sum/3.0;}//將數(shù)據(jù)寫入文件fp=fopen(“stud“,“w“);for(i=0;i<5;i++)if(fwrite(&stu[i],sizeof(structstudent),1,fp)!=1)printf(“filewriteerror\n“);fclose(fp);fp=fopen(“stud“,“r“);for(i=0;i<5;i++){fread(&stu[i],sizeof(structstudent),1,fp);printf(“\n%s,%s,%d,%d,%d,%6.2f\n“,stu[i].num,stu[i].name,stu[i].score[0],stu[i].score[1],stu[i].score[2],stu[i].ave);}return0;}試驗(yàn)結(jié)果:inputscoreofstudent1:NO.:101name:Liscore1:90score2:89score3:88inputscoreofstudent2:NO.:120name:Wangscore1:80score2:79score3:78inputscoreofstudent3:NO.:130name:Chenscore1:70score2:69score3:68inputscoreNO.:140ofstudent4:name:Mascore1:100score2:99score3:98inputscoreofstudent5:NO.:150name:Weiscore1:60score2:59score3:58101,Li,90,89,88,89.00120,Wang,80,79,78,79.00130,Chen,70,69,68,69.00140,Ma,100,99,98,99.00150,Wei,60,59,58,59.00Pressanykeytocontinue試驗(yàn)?zāi)康模?/p>
試驗(yàn)12-2〔3〕已排序的學(xué)生成績文件進(jìn)展插入處理,插3門課成績。程序先計(jì)算插入學(xué)生的平均成績,的學(xué)生數(shù)據(jù):10108 Xin 90,95,60試驗(yàn)內(nèi)容:輸入待插入的學(xué)生的數(shù)據(jù)輸入待插入的學(xué)生的數(shù)據(jù)計(jì)算其平均分stu_sort文件從該文件讀入數(shù)據(jù)并顯示出來ttt個(gè)學(xué)生的數(shù)據(jù)并顯示向文件輸出待輸入的學(xué)生數(shù)據(jù)并顯示t后面的學(xué)生數(shù)據(jù)并顯示關(guān)閉文件源代碼:#include<stdio.h>#include<stdlib.h>structstudent{charnum[10];charname[8];intscore[3];floatave;}st[10],s;intmain{FILE*fp,*fp1;inti,j,t,n;scanf(“%s“,s.num);printf(“name:“);scanf(“%s“,);scanf(“%d,%d,%d“,&s.score[0],&s.score[1],&s.score[2]);s.ave=(s.score[0]+s.score[1]+s.score[2])/3.0;//從文件讀數(shù)據(jù)if((fp=fopen(“stu_sort“,“r“))==NULL){printf(“cannotopenfile.“);exit(0);}printf(“originaldata:\n“);for(i=0;fread(&st[i],sizeof(structstudent),1,fp)!=0;i++){printf(“\n%8s%8s“,st[i].num,st[i].name);for(j=0;j<3;j++)printf(“%8d“,st[i].score[j]);printf(“%10.2f“,st[i].ave);}n=i;for(t=0;st[t].ave>s.ave&&t<n;t++);//向文件寫數(shù)據(jù)printf(“\nNow:\n“);fp1=fopen(“sort1.dat“,“w“);for(i=0i<ti++){fwrite(&st[i],sizeof(structstudent),1,fp1);printf(“\n%8s%8s“,st[i].num,st[i].name);for(j=0;j<3;j++)printf(“%8d“,st[i].score[j]);printf(“%10.2f“,st[i].ave);}fwrite(&s,sizeof(structstudent),1,fp1);printf(“\n%8s%7s%7d%7d%7d%10.2f“,s.num,,s.score[0],s.score[1],s.score[2],s.ave);for(i=t;i<n;i++){fwrite(&st[i],sizeof(structstudent),1,fp1);printf(“\n%8s%8s“,st[i].num,st[i].name);for(j=0;j<3;j++)printf(“%8d“,st[i].score[j]);printf(“%10.2f“,st[i].ave
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 醫(yī)院投資協(xié)議合同范例
- 代理、銷售合作合同范例
- 單位搬家勞務(wù)合同范例
- 定期項(xiàng)目存款合同范例
- 三方出口合同范例
- 餐飲配送加盟合同范例
- 光伏投資合同范例
- 海鮮貨采購合同范例
- 飼料采購意向合同范例
- 生產(chǎn)改造合同范例
- 紅色頒獎(jiǎng)典禮公司年會(huì)員工表彰大會(huì)模板
- 統(tǒng)編版語文三年級(jí)上冊2024-2025學(xué)年第三單元測試題 (含答案)
- 2024甘肅省安全員C證考試題庫
- 2024-2025學(xué)年上學(xué)期廣州初中地理七年級(jí)期末模擬卷1
- 八年級(jí)地理期末模擬卷(考試版A4)【測試范圍:晉教版八上全冊】
- 期末綜合試卷(含答案)2024-2025學(xué)年蘇教版數(shù)學(xué)四年級(jí)上冊
- 統(tǒng)編版語文2024-2025學(xué)年六年級(jí)上冊語文期末專題訓(xùn)練:字音字形(有答案)
- 趣味知識(shí)問答100道
- 2024廣西公需課高質(zhì)量共建“一帶一路”譜寫人類命運(yùn)共同體新篇章答案
- 2024年連云港專業(yè)技術(shù)人員繼續(xù)教育《飲食、運(yùn)動(dòng)和健康的關(guān)系》92分(試卷)
- 人教版數(shù)學(xué)小學(xué)二年級(jí)上冊無紙筆測試題
評(píng)論
0/150
提交評(píng)論