




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上 課程設(shè)計課程名稱:課 程 號: 2013年6月26日 目錄專心-專注-專業(yè)一、課程設(shè)計設(shè)計目的及要求1.課程設(shè)計目的本課程設(shè)計是計算機科學(xué)與技術(shù)專業(yè)重要的實踐性環(huán)節(jié)之一,是在學(xué)生學(xué)習(xí)完程序設(shè)計語言(C)課程后進行的一次全面的綜合練習(xí)。本課程設(shè)計的目的和任務(wù):l 鞏固和加深學(xué)生對C語言課程的基本知識的理解和掌握l 掌握C語言編程和程序調(diào)試的基本技能l 利用C語言進行基本的軟件設(shè)計l 能夠利用所學(xué)的基本知識和技能,解決簡單的程序設(shè)計問題.l 培養(yǎng)學(xué)生在項目開發(fā)中團隊合作精神,創(chuàng)新意識及能力。l 掌握書寫程序設(shè)計說明文檔的能力 2.課程設(shè)計要求l 分析課程設(shè)計題目的要求
2、l 寫出詳細設(shè)計說明l 編寫程序代碼,調(diào)試程序使其能正確運行l(wèi) 設(shè)計完成的軟件要便于操作和使用l 設(shè)計完成后提交課程設(shè)計報告二、課程設(shè)計任務(wù)內(nèi)容2.1背單詞軟件開發(fā) (學(xué)號為單號的必須作)實現(xiàn)功能:l 2.1.1錄入單詞 China 中國Japan 日本 . 使用文件存放。2.1.2隨機測試系統(tǒng)隨機顯示單詞(用戶可以選擇中譯英,或英譯中),對回答錯誤的單詞應(yīng)該可再回答一次。能夠統(tǒng)計回答的正確單詞的個數(shù)。2.1.3順序測驗2.1.4查找單詞的漢語或英語意思輸入中文查對應(yīng)的英語意思,輸入英文查對應(yīng)漢語意思2.2學(xué)生成績管理系統(tǒng) 實現(xiàn)功能:l 設(shè)計一個功能顯示菜單,并有選擇提示;l 建立學(xué)生信息數(shù)據(jù)
3、,包括學(xué)號、姓名、三門課(語文、數(shù)學(xué)和英語)的成績;l 能實現(xiàn)學(xué)生信息增加、刪除和修改;l 統(tǒng)計每個學(xué)生的總分和平均分;l 按照總分從小到大排出名次;l 任意輸入一個學(xué)好,能夠查出該學(xué)生在班級中的排名及其考試成績。l 學(xué)生的信息包括學(xué)號、姓名、三門課(語文、數(shù)學(xué)和英語)的成績,都應(yīng)該保存在二進制文件里2.2.1背單詞系統(tǒng)1)、當(dāng)前學(xué)生信息:通過結(jié)構(gòu)體struct wd 來保存單詞的英文意思和中文意思等相關(guān)信息,并且通過cin函數(shù)輸入單詞信息;2)、單詞錄入 :可以隨時調(diào)用單詞錄入單詞,并用fwrite函數(shù)將單詞保存在“word.txt” 文件里;3)、隨機測試: 運用rand()函數(shù)隨機產(chǎn)生一
4、個單詞的英文, 然后用戶輸入其對應(yīng)的中文意思,在文件中查找此單詞, 并把輸入的中文意思與產(chǎn)生英文單詞的中文意思作比較,若一樣則輸出“回答正確”,否則重新做一遍,然后再判斷,能并統(tǒng)計回答的正確單詞的個數(shù);若找不到則輸出查找失敗的信息;4)、順序測試:從“word.txt”的第一個單詞開始逐個測試,測試方法同隨機測試;5. 單詞查詢:輸入一個英文單詞, 在文件中查找此單詞, 若找到則輸出此單詞的中文意思; 若找不到則輸出查找失敗的信息;5)、退出系統(tǒng).(附加說明:系統(tǒng)將來完善的功能有:測試或查找單詞時實現(xiàn)雙向測試、查找)2.2.2、學(xué)生信息管理系統(tǒng)1)、 當(dāng)前學(xué)生信息:通過結(jié)構(gòu)體struct st
5、udent 來保存學(xué)生的姓名,學(xué)號,性別,語文,數(shù)學(xué),英語和計算機等等相關(guān)信息,并且通過cin函數(shù)來進行給當(dāng)前學(xué)生輸入初始信息 4)、輸出全部學(xué)生信息和全部學(xué)生成績。 2)、學(xué)生成績查詢: 輸入一個學(xué)號, 在文件中查找此學(xué)生, 若找到則輸出此學(xué)生的全部信息和成績; 若找不到則輸出查找失敗的信息. 同時也可以全部把各科的平均成績,最高和最低分輸出。3)、信息插入 :通過給該生的學(xué)號來和原班上的學(xué)生的學(xué)號比較大小,若大就在后,若小則靠前排,將此生的信息保存下來。5)、退出系統(tǒng).第三部分:詳細設(shè)計3.1系統(tǒng)化可以分為如下模塊(即如下函數(shù)):3.1.1背單詞系統(tǒng)1)、單詞錄入:其中包括單詞的英文和其對
6、應(yīng)的中文意思;可用函數(shù)cin來實現(xiàn)此操作。(調(diào)用函數(shù):void luru()) 2)、隨機測試:又分為兩個模塊:(調(diào)用函數(shù):suijiceshi() )、英譯漢。用rand()來隨機產(chǎn)生一個英文單詞、漢譯英。主要內(nèi)容同英譯漢。3)、順序測試:對單詞進行逐個測試。(調(diào)用函數(shù):void shunxuceshi())4)、單詞查詢:(調(diào)用函數(shù):void chazhao() ) 5)、退出系統(tǒng)3.1.2、學(xué)生信息管理系統(tǒng)1)、輸入初始的學(xué)生信息:其中包括學(xué)生的姓名、學(xué)號和性別以及學(xué)生的語文、數(shù)學(xué)、英語和計算機等相關(guān)信息;可用函數(shù)cin來實現(xiàn)此操作。2)、輸出模塊:輸出全部學(xué)生全部信息包括學(xué)生的語文、數(shù)
7、學(xué)、英語成績。3)、插入模塊:可用fwrite函數(shù)來實現(xiàn)。其中通過學(xué)號的大小來比較的,并且以此來排序。4)、輸出學(xué)生的信息以及成績:通過學(xué)生的姓名來查看學(xué)生的語文、數(shù)學(xué)、英語相關(guān)成績,同時也可以分別通過studi-1來輸出語文、數(shù)學(xué)、英語平均分數(shù)。5)、退出系統(tǒng):可用一個函數(shù)exit()來實現(xiàn),首先將信息保存到文件中,釋放動態(tài)創(chuàng)建的內(nèi)存空間,再退出此程序。3.2系統(tǒng)主模塊結(jié)構(gòu)圖背單詞系統(tǒng): 背 單 詞 系 統(tǒng)單詞錄入隨機測試順序測試單詞查詢退出系統(tǒng)漢譯英英譯漢學(xué)生信息管理系統(tǒng):學(xué)生成績管理系統(tǒng)增加信息模塊顯示信息模塊排序信息模塊查詢信息模塊增添信息模塊修改信息模塊刪除信息模塊主菜單模塊寫入文件
8、模塊3.2.1 界面設(shè)計(1)背單詞系統(tǒng):(2)學(xué)生信息管理系統(tǒng)3.2.2數(shù)據(jù)結(jié)構(gòu)設(shè)計:程序設(shè)計中用到的結(jié)構(gòu)體類型:背單詞系統(tǒng)結(jié)構(gòu)體類型:struct wd char chinese20; char english20;wdN;學(xué)生信息管理系統(tǒng)中結(jié)構(gòu)體類型:typedef struct char class_020; /*班級*/ int number; /*學(xué)號*/ char name20; /*姓名*/ float english; /*大學(xué)英語成績*/ float math; /*高等數(shù)學(xué)成績*/ float chinese; /*語文成績*/ float average; /*平均分*
9、/Student;二、程序模塊1、背單詞系統(tǒng): 錄入模塊:void luru() FILE *fp; int flag; if(fp=fopen("d:word.txt","ab+")=NULL) cout<<"打開失敗"<<endl; exit(0); while(1) cout<<"請輸入第"<<p+1<<"個漢語意思:"<<endl; cin>>wdp.chinese; cout<<"
10、請輸入對應(yīng)的英語單詞:"<<endl; cin>>wdp.english; p+; fwrite(&wd,sizeof(wd),p,fp); cout<<"繼續(xù)錄入嗎?(0.退出;1.繼續(xù))" cin>>flag; if(flag=0|p=10) break; fclose(fp); 測試模塊:void suijiceshi() int k; cout<<"(1)漢譯英"<<endl<<"(2)英譯漢"<<"請選
11、擇n"cin>>k; while(k=1) int d; char a20,b20; srand(time(0); d=rand()%p; cout<<wdd.chinese<<'n'<<"請輸入相應(yīng)的英語單詞" cin>>a; if(strcmp(a,wdd.english)=0)r+;s+; cout<<"恭喜你!答對了!n"else s+; cout<<"很遺憾,答錯了!"cout<<"請再次輸入相
12、應(yīng)的英語單詞"cin>>b; if(strcmp(b,wdd.english)=0) r+; cout<<"恭喜你!答對了!n"else cout<<"很遺憾,答錯了!"cout<<"正確個數(shù)"<<r<<'t'<<"總個數(shù)"<<s<<'n'break;if(i>p) cout<<"沒有相應(yīng)的英語單詞"<<endl;br
13、eak; while(k=2) int n; char c20,d20;srand(time(0);n=rand()%p; cout<<wdn.english<<'n'<<"請輸入相應(yīng)的漢語"cin>>c; if(strcmp(c,wdn.chinese )=0) r+; s+; cout<<"恭喜你!答對了!n" else s+; cout<<"很遺憾,答錯了!"cout<<"請再次輸入相應(yīng)的漢語"cin>&
14、gt;d; if(strcmp(d,wdn.chinese )=0) r+; cout<<"恭喜你!答對了!n" else cout<<"很遺憾,答錯了!" cout<<"正確個數(shù)"<<r<<'t'<<"總個數(shù)"<<s<<'n'break; if(i>p) cout<<"沒有相應(yīng)的漢語"<<endl;break;void shunxuces
15、hi() for(i=0;i<p;i+) char a20,b20; cout<<"第"<<i+1<<"個漢語"<<wdi.chinese<<'n'<<"請輸入相應(yīng)的英語單詞"cin>>a;if(strcmp(a,wdi.english)=0)r+;s+; cout<<"恭喜你!答對了!n"else s+; cout<<"很遺憾,答錯了!"cout<<&q
16、uot;請再次輸入相應(yīng)的英語單詞"cin>>b; if(strcmp(b,wdi.english)=0)r+; cout<<"恭喜你!答對了!n"else cout<<"很遺憾,答錯了!"cout<<"正確個數(shù)"<<r<<'t'<<"總個數(shù)"<<s<<'n' if(i>p) cout<<"沒有相應(yīng)的英語單詞"<<end
17、l; 查詢模塊:void chazhao() char a20; cout<<"請輸入你要查找的漢語或英語" cin>>a; for(i=0;i<p;i+) if(strcmp(a,wdi.chinese )=0) cout<<"對應(yīng)英語是"<<wdi.english; else if(strcmp(a,wdi.english )=0) cout<<"對應(yīng)漢語是"<<wdi.chinese ; 2、學(xué)生信息管理系統(tǒng):、數(shù)據(jù)錄入模塊:int Input(Stu
18、dent stud,int n) /*輸入若干條記錄*/ int i=0; char sign,x10; /*x10為清除多余的數(shù)據(jù)所用*/ while(sign!='n'&&sign!='N') /*判斷*/ cout<<"請輸入學(xué)生的班別:" /*交互輸入*/ cin>>studn+i.class_0; cout<<"請輸入學(xué)生的學(xué)號:" cin>>studn+i.number; cout<<"請輸入學(xué)生的姓名:" cin&
19、gt;>studn+; cout<<"請輸入英語成績:" cin>>studn+i.english; cout<<"請輸入數(shù)學(xué)成績:" cin>>studn+i.math; cout<<"請輸入語文成績:" cin>>studn+i.chinese; studn+i.average=(studn+i.english+studn+i.math+studn+i.chinese)/3; cout<<"平均分為:"<
20、<studn+i.average<<endl; gets(x); /*清除多余的輸入*/ cout<<"繼續(xù)寫入成績?(Y/N)" cin>>sign; /*輸入判斷*/ i+; return(n+i); 、顯示學(xué)生信息模塊:void Display(Student stud,int n) /*顯示所有記錄*/ int i; if(!stud)cout<<"沒有記錄" else cout<<"*"<<endl; /*格式頭*/ cout<<&qu
21、ot;班別"<<setw(10)<<"學(xué)號"<<setw(10)<<"姓名"<<setw(10)<<"英語"<<setw(10)<<"數(shù)學(xué)"<<setw(10)<<"語文"<<setw(10)<<"平均分"<<endl; for(i=1;i<n+1;i+) /*循環(huán)輸入*/ studn-1.average=
22、(studn-1.english+studn-1.math+studn-1.chinese)/3; cout<<studi-1.class_0<<setw(10)<<studi-1.number<<setw(10)<<<<setw(10)<<studi-1.english<<setw(10)<< studi-1.math<<setw(10)<<studi-1.chinese<<setw(10)<<studi-1.av
23、erage<<endl; cout<<"ttt"<<endl; system("pause"); 、刪除學(xué)生成績信息模塊:int Delete(Student stud,int n) /*按學(xué)號查找,刪除一條記錄*/ int s; int i=0,j; cout<<"輸入需要刪除學(xué)生的學(xué)號:"<<endl; /*交互式問尋*/ cin>>s; while(studi.number-s)!=0&&i<n) i+; /*查找判斷*/ if(i=n
24、) cout<<"提示:對不起,無法找到改學(xué)號"<<endl; /*返回失敗信息*/ return(n); for(j=i;j<n-1;j+) /*刪除操作*/ strcpy(studj.class_0,studj+1.class_0); studj.number=studj+1.number; strcpy(,studj+1.name); studj.english=studj+1.english; studj.math=studj+1.math; studj.chinese=studj+1.chinese; cout&l
25、t;<"已成功刪除!"<<endl; /*返回成功信息*/ return(n-1); 、修改學(xué)生信息模塊:void Modify(Student stud,int n) int s; int i=0; cout<<"輸入需要修改成績學(xué)生的學(xué)號:"<<endl; cin>>s; while(studi.number-s)!=0&&i<n) i+; /*查找判斷*/ if(i=n) cout<<"對不起,無該學(xué)生的成績"<<endl; /*
26、輸入失敗信息*/ return; cout<<"該學(xué)生的信息"<<endl; /*格式頭*/ cout<<"班別"<<setw(10)<<"學(xué)號"<<setw(10)<<"姓名"<<setw(10)<<"英語"<<setw(10)<<"數(shù)學(xué)"<<setw(10)<<"語文"<<setw(10
27、)<<"平均分"<<endl; cout<<"*"<<endl; studi.average=(studi.english+studi.math+studi.chinese)/3; cout<<studi-1.class_0<<setw(10)<<studi-1.number<<setw(10)<<<<setw(10)<<studi-1.english<<setw(10)<<
28、studi-1.math<<setw(10)<<studi-1.chinese<<setw(10)<<studi-1.average<<endl; cout<<"請輸入學(xué)生的班別:"<<endl; /*交互輸入*/ cin>>studn+i.class_0; cout<<"請輸入學(xué)生的學(xué)號:"<<endl; cin>>studn+i.number; cout<<"請輸入學(xué)生的姓名:"<&
29、lt;endl; cin>>studn+; cout<<"請輸入英語成績:"<<endl; cin>>studn+i.english; cout<<"請輸入數(shù)學(xué)成績:"<<endl; cin>>studn+i.math; cout<<"請輸入語文成績:"<<endl; cin>>studn+i.chinese; studi.average=(studi.english+studi.math+studi.c
30、hinese)/3; cout<<"平均分為:"<<studi.average;、查找學(xué)生信息模塊:void Search(Student stud,int n) /*查找并顯示一個記錄*/ int s; int i=0; cout<<"輸入需要查找學(xué)生的學(xué)號:"<<endl; cin>>s; while(studi.number-s)!=0&&i<n) i+; /*查找判斷*/ if(i=n) cout<<"對不起,無法找到該學(xué)生的信息!"
31、<<endl; /*輸入失敗信息*/ return; cout<<"-"<<endl; cout<<"班別:"<<studi.class_0<<endl; /*輸出該學(xué)生信息*/ cout<<"學(xué)號:"<<studi.number<<endl; cout<<"姓名:"<<<<endl; cout<<"英語:"<<
32、;studi.english<<endl; cout<<"數(shù)學(xué):"<<studi.math<<endl; cout<<"語文:"<<studi.chinese<<endl; cout<<"平均分:"<<studi.average<<endl;void Modify(Student stud,int n) int s; int i=0; cout<<"輸入需要修改成績學(xué)生的學(xué)號:"<
33、;<endl; cin>>s; while(studi.number-s)!=0&&i<n) i+; /*查找判斷*/ if(i=n) cout<<"對不起,無該學(xué)生的成績"<<endl; /*輸入失敗信息*/ return; cout<<"該學(xué)生的信息"<<endl; /*格式頭*/ cout<<"班別"<<setw(10)<<"學(xué)號"<<setw(10)<<&quo
34、t;姓名"<<setw(10)<<"英語"<<setw(10)<<"數(shù)學(xué)"<<setw(10)<<"語文"<<setw(10)<<"平均分"<<endl; cout<<"*"<<endl; studi.average=(studi.english+studi.math+studi.chinese)/3; cout<<studi-1.class_
35、0<<setw(10)<<studi-1.number<<setw(10)<<<<setw(10)<<studi-1.english<<setw(10)<< studi-1.math<<setw(10)<<studi-1.chinese<<setw(10)<<studi-1.average<<endl; cout<<"請輸入學(xué)生的班別:"<<endl; /*交互輸入*/ c
36、in>>studn+i.class_0; cout<<"請輸入學(xué)生的學(xué)號:"<<endl; cin>>studn+i.number; cout<<"請輸入學(xué)生的姓名:"<<endl; cin>>studn+; cout<<"請輸入英語成績:"<<endl; cin>>studn+i.english; cout<<"請輸入數(shù)學(xué)成績:"<<endl; cin>
37、>studn+i.math; cout<<"請輸入語文成績:"<<endl; cin>>studn+i.chinese; studi.average=(studi.english+studi.math+studi.chinese)/3; cout<<"平均分為:"<<studi.average;、排序模塊:void Sort(Student stud,int n) /*按平均分排序*/ int i,j,k; float s; char t20; for(i=0;i<n-1;i+) /
38、*冒泡法排序*/ for(j=0;j<n-1-i;j+) if(studj.average<studj+1.average) strcpy(t,studj+1.class_0); strcpy(studj+1.class_0,studj.class_0); strcpy(studj.class_0,t); k=studj+1.number; studj+1.number=studj.number; studj.number=k; strcpy(t,studj+1.name); strcpy(studj+1.name,); strcpy(,t)
39、; s=studj+1.english; studj+1.english=studj.english; studj.english=s; s=studj+1.math; studj+1.math=studj.math; studj.math=s; s=studj+1.chinese; studj+1.chinese=studj.chinese; studj.chinese=s; s=studj+1.average; studj+1.average=studj.average; studj.average=s; cout<<"*"<<endl; /*格
40、式頭*/ cout<<"班別"<<setw(10)<<"學(xué)號"<<setw(10)<<"姓名"<<setw(10)<<"英語"<<setw(10)<<"數(shù)學(xué)"<<setw(10)<<"語文"<<setw(10)<<"平均分"<<endl; for(i=1;i<n+1;i+) /*循環(huán)輸
41、入*/ studi-1.average=(studi-1.english+studi-1.math+studi-1.chinese)/3; cout<<studi-1.class_0<<setw(10)<<studi-1.number<<setw(10)<<<<setw(10)<<studi-1.english<<setw(10)<< studi-1.math<<setw(10)<<studi-1.chinese<<setw(1
42、0)<<studi-1.average<<endl; 三、程序中出現(xiàn)的問題1、 在程序編譯的時候有時候會出現(xiàn),unclear definition等字樣解決辦法:檢查定義變量或頭文件是否丟失;2、 在程序編譯的時候有時候會出現(xiàn)unexpect file end解決辦法:檢查花括號是否缺失(小技巧:編程中寫花括號時,盡量一次性把兩個花括號寫齊,這樣會避免花括號丟失?。?;3、 讀取文件中結(jié)構(gòu)體內(nèi)數(shù)組里的內(nèi)容時,應(yīng)直接讀取數(shù)組,如:fread(&Wi,sizeof(word),1,fp)而不應(yīng)該是:fread(&Wi.english,sizeof(word),
43、1,fp);4、 Case應(yīng)該和break組合;四、心得體會三周的C語言程序課程設(shè)計,我進步很多,上機的實踐操作,讓我把書上的知識理解的更加透徹。在課程設(shè)計中得到了運用和實踐。雖然,在課程設(shè)計開始的時候,我感到很艱難,不知道該怎么做,就去看書照著做,但是后來,在同學(xué)和老師的指點和幫助下和在上網(wǎng)查看了大量的資料之后終于慢慢的知道我該做什么、怎么做。一次次的出錯,一次次的改正。當(dāng)我看到自己的程序能夠正常運行的時候,我的多么的高興和欣慰,因為在此期間,我為課程設(shè)計付出了只記得心血和汗水!正應(yīng)了那句古語:“寶劍鋒從磨礪出,梅花香自苦寒來”。雖然對編程不太感興趣,但是通過這門課程的學(xué)習(xí),我認為在當(dāng)下社會
44、還是非常有益的。用處之廣,作用之大。三星期中最后,想說兩句,這次設(shè)計,讓我重新認識到了C語言的重要性,而且還得到了用C語言解決實際問題的寶貴經(jīng)驗! 在這三周中,非常感謝老師的相伴指導(dǎo)。所以,我對程老師要表示深深的感謝! 這就是我整個課程設(shè)計中的的心得體會!五參考資料: 1C程序設(shè)計 清華大學(xué)出版社 譚浩強2C+程序設(shè)計教程 清華大學(xué)出版社 錢能3.C/C+程序設(shè)計面向過程分冊電子工業(yè)出版社 鄭秋生 4.C語言程序設(shè)計題典 清華大學(xué)出版社 李春葆等六、附錄:程序清單#include<iostream.h>#include<stdio.h>#include<stdli
45、b.h>#include<string.h>#include<time.h>#define N 10int r=0,s=0,i=0,p=0;struct wd char chinese20; char english20;wdN;void menu() cout<<"歡迎進入背單詞系統(tǒng)n" cout<<"1:錄入單詞n" cout<<"2:隨機測試n" cout<<"3:順序測試n" cout<<"4:查找單詞n&q
46、uot; cout<<"0:退出n"void luru() FILE *fp; int flag; if(fp=fopen("d:word.txt","ab+")=NULL) cout<<"打開失敗"<<endl; exit(0); while(1) cout<<"請輸入第"<<p+1<<"個漢語意思:"<<endl; cin>>wdp.chinese; cout<<&
47、quot;請輸入對應(yīng)的英語單詞:"<<endl; cin>>wdp.english; p+; fwrite(&wd,sizeof(wd),p,fp); cout<<"繼續(xù)錄入嗎?(0.退出;1.繼續(xù))" cin>>flag; if(flag=0|p=10) break; fclose(fp);void suijiceshi() int k; cout<<"(1)漢譯英"<<endl<<"(2)英譯漢"<<"請選擇
48、n"cin>>k; while(k=1) int d; char a20,b20; srand(time(0); d=rand()%p; cout<<wdd.chinese<<'n'<<"請輸入相應(yīng)的英語單詞" cin>>a; if(strcmp(a,wdd.english)=0)r+;s+; cout<<"恭喜你!答對了!n"else s+; cout<<"很遺憾,答錯了!"cout<<"請再次輸入相應(yīng)
49、的英語單詞"cin>>b; if(strcmp(b,wdd.english)=0) r+; cout<<"恭喜你!答對了!n"else cout<<"很遺憾,答錯了!"cout<<"正確個數(shù)"<<r<<'t'<<"總個數(shù)"<<s<<'n'break;if(i>p) cout<<"沒有相應(yīng)的英語單詞"<<endl;bre
50、ak; while(k=2) int n; char c20,d20;srand(time(0);n=rand()%p; cout<<wdn.english<<'n'<<"請輸入相應(yīng)的漢語"cin>>c; if(strcmp(c,wdn.chinese )=0) r+; s+; cout<<"恭喜你!答對了!n" else s+; cout<<"很遺憾,答錯了!"cout<<"請再次輸入相應(yīng)的漢語"cin>&g
51、t;d; if(strcmp(d,wdn.chinese )=0) r+; cout<<"恭喜你!答對了!n" else cout<<"很遺憾,答錯了!" cout<<"正確個數(shù)"<<r<<'t'<<"總個數(shù)"<<s<<'n'break; if(i>p) cout<<"沒有相應(yīng)的漢語"<<endl;break;void shunxucesh
52、i() for(i=0;i<p;i+) char a20,b20; cout<<"第"<<i+1<<"個漢語"<<wdi.chinese<<'n'<<"請輸入相應(yīng)的英語單詞"cin>>a;if(strcmp(a,wdi.english)=0)r+;s+; cout<<"恭喜你!答對了!n"else s+; cout<<"很遺憾,答錯了!"cout<<&qu
53、ot;請再次輸入相應(yīng)的英語單詞"cin>>b; if(strcmp(b,wdi.english)=0)r+; cout<<"恭喜你!答對了!n"else cout<<"很遺憾,答錯了!"cout<<"正確個數(shù)"<<r<<'t'<<"總個數(shù)"<<s<<'n' if(i>p) cout<<"沒有相應(yīng)的英語單詞"<<endl
54、; void chazhao() char a20; cout<<"請輸入你要查找的漢語或英語" cin>>a; for(i=0;i<p;i+) if(strcmp(a,wdi.chinese )=0) cout<<"對應(yīng)英語是"<<wdi.english; else if(strcmp(a,wdi.english )=0) cout<<"對應(yīng)漢語是"<<wdi.chinese ; void main() int sel; while(1) menu();
55、cout<<"請輸入選項(0-4)"<<'n' cin>>sel; switch(sel) case 0:cout<<"已退出!n"exit(0);break; case 1:luru();break; case 2:suijiceshi();break; case 3:shunxuceshi();break; case 4:chazhao();break; 1、學(xué)生信息管理系統(tǒng)#include<iostream.h> /*引用庫函數(shù)*/ #include<stdlib.h
56、> #include<ctype.h> #include<stdio.h>#include<string.h>#include<iomanip.h> typedef struct char class_020; /*班級*/ int number; /*學(xué)號*/ char name20; /*姓名*/ float english; /*大學(xué)英語成績*/ float math; /*高等數(shù)學(xué)成績*/ float chinese; /*語文成績*/ float average; /*平均分*/Student; Student stu100; /
57、*結(jié)構(gòu)體數(shù)組變量*/int menu() /*菜單函數(shù)*/ char c; do system("cls"); /*運行前清屏*/ cout<<"學(xué)生成績管理系統(tǒng)"<<endl;/*菜單選擇*/ cout<<"1.輸入數(shù)據(jù)"<<endl; cout<<"2.顯示所有數(shù)據(jù)"<<endl; cout<<"3.按平均分降序排列"<<endl; cout<<"4.查找并顯示數(shù)據(jù)"
58、;<<endl; cout<<"5.插入一組數(shù)據(jù)"<<endl; cout<<"6.修改一組數(shù)據(jù)"<<endl; cout<<"7.刪除一組數(shù)據(jù)"<<endl; cout<<"8.從文件中讀入數(shù)據(jù)"<<endl; cout<<"9.將所有記錄寫入文件"<<endl; cout<<"0.退出本系統(tǒng)n"<<endl; cout
59、<<"請你選擇操作(0-9):"<<endl; c=getchar(); /*讀入選擇*/ while(c<'0'|c>'9'); return(c-'0'); /*返回選擇*/ int Input(Student stud,int n) /*輸入若干條記錄*/ int i=0; char sign,x10; /*x10為清除多余的數(shù)據(jù)所用*/ while(sign!='n'&&sign!='N') /*判斷*/ cout<<&qu
60、ot;請輸入學(xué)生的班別:" /*交互輸入*/ cin>>studn+i.class_0; cout<<"請輸入學(xué)生的學(xué)號:" cin>>studn+i.number; cout<<"請輸入學(xué)生的姓名:" cin>>studn+; cout<<"請輸入英語成績:" cin>>studn+i.english; cout<<"請輸入數(shù)學(xué)成績:" cin>>studn+i.math; cout&
61、lt;<"請輸入語文成績:" cin>>studn+i.chinese; studn+i.average=(studn+i.english+studn+i.math+studn+i.chinese)/3; cout<<"平均分為:"<<studn+i.average<<endl; gets(x); /*清除多余的輸入*/ cout<<"繼續(xù)寫入成績?(Y/N)" cin>>sign; /*輸入判斷*/ i+; return(n+i); void Display(Student stud,int n) /*顯示所有記錄*/ int i; if(!stud)cout<<"沒有記錄" else cout<<"*"<<endl; /*格式頭*/ cout<<"班別"<<setw(10)<<"學(xué)號"<<setw(10)<
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 【正版授權(quán)】 ISO/IEC 14496-10:2025 EN Information technology - Coding of audio-visual objects - Part 10: Advanced video coding
- 單位工程劃分課件編寫
- 赫山區(qū)考編數(shù)學(xué)試卷
- 黃陂四年級數(shù)學(xué)試卷
- 漢中龍崗初一數(shù)學(xué)試卷
- 2025年山東省齊河縣一中高一物理第二學(xué)期期末質(zhì)量跟蹤監(jiān)視模擬試題含解析
- 2025年中國旋轉(zhuǎn)吊具行業(yè)市場發(fā)展前景及發(fā)展趨勢與投資戰(zhàn)略研究報告
- 2025年衛(wèi)浴樹脂項目可行性分析報告
- 2025年高空作業(yè)車項目投資分析及可行性報告
- 高爐布袋除塵器項目投資可行性研究分析報告(2024-2030版)
- 【詩歌鑒賞】2025屆高三下4月名校??荚囶}
- 口腔科針刺傷處理流程
- 雞蛋庫房管理制度
- 小學(xué)生書法知識講座課件
- 新能源汽車故障診斷技術(shù) 教案 教案4- BMS故障診斷檢修
- 北師大版五年級下冊數(shù)學(xué)口算題題庫1200道帶答案可打印
- 完整版高中古詩文必背72篇【原文+注音+翻譯】
- 空天地協(xié)同網(wǎng)絡(luò)的邊緣計算與資源分配的優(yōu)化策略與實踐
- 普通話測試命題說話(2024年新版)50則
- 《工業(yè)機器人編程》課件 任務(wù)2 單工件搬運任務(wù)實現(xiàn)
- 2025年傳染病防控技能競賽筆試理論考試題庫600題(附答案)
評論
0/150
提交評論