版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p><b> C++課程設(shè)計</b></p><p> 課題名稱:學(xué)習(xí)成績管理系統(tǒng)</p><p><b> 班級:信息111班</b></p><p> 姓名:XXX 姓名:XXX</p><p> 學(xué)號:XXXXXXXXXXX 學(xué)號:XXXXXXXXXX</p
2、><p> 完成日期:2012/09/26</p><p><b> 1、實驗報告</b></p><p><b> a、課程設(shè)計目的</b></p><p> 設(shè)計和開發(fā)一個學(xué)生成績管理系統(tǒng)</p><p><b> b、實驗環(huán)境</b><
3、/p><p> 在WindowsXP下的Microsoft Visual c++中完成課程設(shè)計</p><p><b> c、設(shè)計要求</b></p><p> 學(xué)生成績管理系統(tǒng)中不同使用單位(用戶)的學(xué)生人數(shù)事先無法確定.</p><p> 系統(tǒng)要求有學(xué)生成績的記錄、輸入、查詢、修改、刪除和文件保存</p&g
4、t;<p> 系統(tǒng)使用文字菜單項的標(biāo)號選擇實現(xiàn)對子模塊的調(diào)用</p><p> 每門課程保存成一個文件名,由班級號和課程名的拼音字母組成,輸入的班級號和課程名自動生成文件名</p><p> 每個學(xué)生的課程有數(shù)學(xué)、語文、英語、物理、化學(xué)、生物</p><p> 學(xué)生成績表結(jié)構(gòu)約定為(學(xué)號 姓名 平時成績 期末成績 總評成績)</p>
5、<p> 總評成績 = 平時成績 * 30% + 期末成績 *70% ,由系統(tǒng)自動計算得出</p><p> 7) 學(xué)號是一個9位整數(shù)構(gòu)成的字符串, 學(xué)號的編碼規(guī)則:入學(xué)年份+在讀年級+在讀班級+班內(nèi)編號;入學(xué)年份用4位整數(shù)構(gòu)成字符串,如2003年入學(xué)則表示為:”2003”;在讀年級用1位整數(shù)構(gòu)成字符串,如正在1年級讀書則表示為:”1”;在讀班級用2位整數(shù)構(gòu)成字符串,如正在1班讀書則表示為:”0
6、1”;班內(nèi)編號用2位整數(shù)構(gòu)成字符串,如在班內(nèi)編號為23號則表示為:”23</p><p><b> d、設(shè)計方案</b></p><p> 首先定義結(jié)構(gòu)體,并且用其作為存儲空間;然后建立首結(jié)點,建立鏈表;自行賦值輸入學(xué)號,當(dāng)輸入為0時,停止輸入,記錄尾結(jié)點;分別定義記錄、輸入、查詢、修改、刪除的函數(shù),需要對鏈表中結(jié)點的數(shù)據(jù)進行操作,調(diào)用函數(shù),實現(xiàn)對學(xué)生成績的管理,
7、最后將處理好的鏈表按照要求儲存在相應(yīng)的文件里。</p><p> 2、自主開發(fā)的程序軟件技術(shù)工作報告</p><p> a、課程設(shè)計需求分析</p><p> 考慮到?jīng)]有學(xué)生成績的數(shù)據(jù)庫,所以首次運行要求輸入一門學(xué)科的學(xué)生信息,包括平時成績和期末成績,由系統(tǒng)自動計算出總評成績 = 平時成績 * 30% + 期末成績 * 70% ,并且保存到文件中,并且以班級號
8、和學(xué)科名拼音的結(jié)合來命名,幫助解決了老師繁瑣單調(diào)的計算。</p><p> b、數(shù)據(jù)字典簡介(關(guān)于結(jié)構(gòu)體和各變量的定義)</p><p> 定義student的結(jié)構(gòu)體,包含學(xué)號(num)、姓名(name)、平時成績(Pscore)、期末成績(Mscore)和總評成績(zp),最后定義一個類型為student的指針(*next),其中總評成績由平時成績乘以30%加上期末成績乘以70%計算
9、得出, 即zp = Pscore *0.3+ Mscore *0.7。</p><p> 各個變量在程序中定義如下:</p><p> 序號 成員名 數(shù)據(jù)類型 字段含義</p><p> 1、 num string 學(xué)號</p><p> 2、
10、 name string 姓名</p><p> 3、 Pscore float 平時成績</p><p> 4、 Mscore float 期末成績</p><p> 5、 zp
11、float 總評成績</p><p> 6、 *next student 指針</p><p> 當(dāng)運行程序時,每定義一個新結(jié)點,各個變量賦值給結(jié)構(gòu)體中的各個新成員,并且定義其指針的指向,從而建立鏈表。</p><p> c、 函數(shù)模塊功能簡介</p><p> 分別定
12、義以下函數(shù),其中函數(shù)名和作用簡介如下:</p><p> 1 )insert( ) :學(xué)生成績錄入</p><p> 2 )search( ) :學(xué)生成績查詢</p><p> 3 )updata ( ) :學(xué)生成績修改</p><p> 4 )delet( ) :學(xué)生成績刪除</p><p>
13、 5 )display( ) :學(xué)生成績顯示 </p><p> 6 )recreat( ) : 新建學(xué)生成績信息文件</p><p> 7 )save( ) :保存學(xué)生信息到記錄文件</p><p><b> d、系統(tǒng)主要流程圖</b></p><p><b> e、c++源程
14、序</b></p><p> #include<iostream></p><p> using namespace std ;</p><p> #include<fstream></p><p> #include<string></p><p> stru
15、ct student</p><p> { string num;</p><p> string name;</p><p> string course[6];</p><p> float Pscore[6];</p><p> float Mscore[6];</p><p&g
16、t; float zp[6];</p><p> student *next;</p><p><b> };</b></p><p> student * stud=NULL;</p><p> int numofstu=0;</p><p> #define numofcourse
17、 6;</p><p><b> //函數(shù)集//</b></p><p> int insert(void);</p><p> void displaytable(student * p1) ;</p><p> int display(void);</p><p> int sear
18、ch_1(void);</p><p> int search_2(void);</p><p> int search_3(void);</p><p> int search(void);</p><p> int delet(void);</p><p> int updata(void);</p
19、><p> int save_1(void);</p><p> int save_2(void);</p><p> int save_3(void);</p><p> int save(void);</p><p> int recreat(void);</p><p> int
20、END(void);</p><p> //insert()函數(shù)</p><p> // 功能:錄入學(xué)生記錄</p><p> int insert(void)</p><p><b> {</b></p><p> student * p1;</p><p>
21、<b> char ch;</b></p><p> if(numofstu==0)</p><p> cout<<endl<<"當(dāng)前無記錄,需建立新表!"<<endl;</p><p><b> else </b></p><p>
22、 cout<<endl<<"在當(dāng)前表后添加新記錄:"<<endl; </p><p><b> p1=stud;</b></p><p> for(int i=1;i<numofstu;i++)</p><p><b> {</b></p>
23、<p> p1=p1->next; </p><p><b> }</b></p><p> cout<<"你確定要添加一組學(xué)生記錄嗎?(Y/N): ";</p><p><b> cin>>ch;</b></p><p>
24、 cout<<endl;</p><p> if(ch!='n'&&ch!='N')</p><p><b> {</b></p><p> p1=new student;</p><p> student * p2=p1;</p>&l
25、t;p> cout<<" 注:輸入結(jié)束時請輸入0!"<<endl<<endl;</p><p> cout<<"請輸入學(xué)號: ";</p><p> cin>>p1->num;</p><p> while(p1->num[0]!='
26、0')</p><p><b> {</b></p><p> if(numofstu!=0)</p><p><b> {</b></p><p><b> do</b></p><p><b> {</b>&l
27、t;/p><p><b> int n=0;</b></p><p><b> int t1=0;</b></p><p> student *p;</p><p><b> p=stud;</b></p><p><b> do<
28、/b></p><p><b> {</b></p><p><b> t1++;</b></p><p> if(p->num==p1->num)</p><p><b> n++;</b></p><p> p=p
29、->next; </p><p> } while(t1<numofstu);</p><p><b> if(n==0)</b></p><p><b> {</b></p><p> break;break;</p><p><b>
30、; }</b></p><p><b> else</b></p><p><b> {</b></p><p> cout<<"該學(xué)號已存在!請重新輸入學(xué)號:"; </p><p> cin>>p1->num;</
31、p><p><b> }</b></p><p> }while(1);</p><p><b> }</b></p><p> numofstu++;</p><p> if(numofstu==1)</p><p><b> s
32、tud=p1;</b></p><p><b> else</b></p><p> p2->next=p1;</p><p> cout<<"請輸入姓名: ";</p><p> cin>>p1->name;</p><p&
33、gt; p1->course[0]="yuwen";</p><p> p1->course[1]="yingyu";</p><p> p1->course[2]="shuxue";</p><p> p1->course[3]="wuli";</
34、p><p> p1->course[4]="huaxue";</p><p> p1->course[5]="shengwu";</p><p> cout<<endl<<"請輸入平時成績"<<endl;</p><p> cout
35、<<"語文: ";</p><p> cin>>p1->Pscore[0];</p><p> cout<<"英語: ";</p><p> cin>>p1->Pscore[1];</p><p> cout<<"
36、數(shù)學(xué): ";</p><p> cin>>p1->Pscore[2];</p><p> cout<<"物理: ";</p><p> cin>>p1->Pscore[3];</p><p> cout<<"化學(xué): ";<
37、;/p><p> cin>>p1->Pscore[4];</p><p> cout<<"生物: ";</p><p> cin>>p1->Pscore[5];</p><p> cout<<endl<<"請輸入期末成績"<
38、;<endl;</p><p> cout<<"語文: ";</p><p> cin>>p1->Mscore[0];</p><p> cout<<"英語: ";</p><p> cin>>p1->Mscore[1];<
39、/p><p> cout<<"數(shù)學(xué): ";</p><p> cin>>p1->Mscore[2];</p><p> cout<<"物理: ";</p><p> cin>>p1->Mscore[3];</p><p&
40、gt; cout<<"化學(xué): ";</p><p> cin>>p1->Mscore[4];</p><p> cout<<"生物: ";</p><p> cin>>p1->Mscore[5];</p><p> for(int i
41、=0;i<6;i++)</p><p><b> {</b></p><p> p1->zp[i]=0.3*(p1->Pscore[i])+0.7*(p1->Mscore[i]);</p><p><b> }</b></p><p><b> p2=p1;
42、</b></p><p> p1=new student;</p><p> cout<<endl<<endl<<"請輸入學(xué)號: ";</p><p> cin>>p1->num; </p><p><b> }</b><
43、/p><p> p2->next=NULL;</p><p><b> return 1;</b></p><p><b> }</b></p><p><b> else </b></p><p><b> return 0;&l
44、t;/b></p><p><b> }</b></p><p> // display()函數(shù)</p><p> // 功能:顯示所有學(xué)生信息 </p><p> void displaytable(student * p1) </p><p><b> {&l
45、t;/b></p><p> cout<<"學(xué)號:"<<p1->num<<endl;</p><p> cout<<"姓名:"<<p1->name<<endl;</p><p> cout<<"所學(xué)科目: &q
46、uot;;</p><p> for(int i=0;i<6;i++)</p><p> cout<<p1->course[i]<<" ";</p><p> cout<<endl;</p><p> cout<<"平時成績: "
47、;</p><p> for(i=0;i<6;i++)</p><p> cout<<p1->Pscore[i]<<" ";</p><p> cout<<endl;</p><p> cout<<"期末成績: ";<
48、/p><p> for(i=0;i<6;i++)</p><p> cout<<p1->Mscore[i]<<" ";</p><p> cout<<endl;</p><p> cout<<"總評成績: ";</p>
49、;<p> for(i=0;i<6;i++)</p><p> cout<<p1->zp[i]<<" ";</p><p> cout<<endl; </p><p><b> }</b></p><p> int
50、 display(void)</p><p><b> {</b></p><p> student *p1;</p><p> if(numofstu==0)</p><p><b> {</b></p><p> cout<<"記錄不存在!
51、"<<endl;</p><p><b> return 0;</b></p><p><b> }</b></p><p> cout<<"顯示學(xué)生記錄! "<<endl<<endl;</p><p><b&
52、gt; p1=stud;</b></p><p><b> int i;</b></p><p><b> i=1; </b></p><p><b> do</b></p><p><b> {</b></p><
53、;p> displaytable(p1);</p><p> cout<<endl<<endl;</p><p> p1=p1->next;</p><p><b> i++; </b></p><p> if(i%10==0&&i!=0)</p>
54、<p><b> {</b></p><p> cout<<" "<<endl;</p><p> cout<<endl<<endl; </p><p><b>
55、 }</b></p><p> }while(i<=numofstu); </p><p> cout<<endl;</p><p> cout<<"共計"<<numofstu<<"條學(xué)生記錄!"<<endl<<endl<&l
56、t;endl<<endl;</p><p> system("pause");</p><p> return 1; </p><p><b> }</b></p><p> // search()函數(shù) </p><p> // 功能:查詢指定
57、學(xué)生信息,可按 學(xué)號、總評成績進行查詢 </p><p> int search_1(void)</p><p><b> {</b></p><p><b> int n=0;</b></p><p> student *p;</p><p><b>
58、p=stud;</b></p><p> string num3;</p><p> cout<<"請輸入要查詢學(xué)生的學(xué)號:";</p><p> cin>>num3;</p><p><b> do</b></p><p><
59、b> {</b></p><p> if(p->num==num3)</p><p><b> {</b></p><p> displaytable(p) ;</p><p><b> n++;</b></p><p><b>
60、 }</b></p><p> p=p->next; </p><p> } while(p);</p><p><b> if(n==0)</b></p><p><b> {</b></p><p> cout<<"無符
61、合條件的學(xué)生記錄!"<<endl;</p><p><b> return 0;</b></p><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p&g
62、t;<p> cout<<"共計"<<n<<"個學(xué)生的記錄。"<<endl; </p><p><b> return 1;</b></p><p><b> }</b></p><p><b> }&l
63、t;/b></p><p> int search_2(void)</p><p><b> {</b></p><p> student * p;</p><p><b> p=stud; </b></p><p> float min,max,m; &
64、lt;/p><p><b> int n;</b></p><p><b> n=0;</b></p><p> cout<<"請輸入要查詢學(xué)生的總評成績所在分?jǐn)?shù)段(min,max):"<<endl;</p><p> cout<<&quo
65、t;最高成績: ";</p><p><b> cin>>max;</b></p><p> cout<<"最低成績: "; </p><p><b> cin>>min;</b></p><p> cout<<e
66、ndl;</p><p> if(min>max)</p><p><b> {</b></p><p><b> m=min;</b></p><p><b> min=max;</b></p><p> max=m; &
67、lt;/p><p><b> }</b></p><p><b> do</b></p><p><b> {</b></p><p> if((min<=p->zp[0])&&(p->zp[0]<=max))</p>
68、<p> {displaytable(p) ;</p><p><b> n++;</b></p><p><b> }</b></p><p> p=p->next; </p><p> } while(p);</p><p><b>
69、; if(n==0)</b></p><p><b> {</b></p><p> cout<<"無符合條件的學(xué)生記錄!"<<endl;</p><p><b> return 0;</b></p><p><b> }&
70、lt;/b></p><p><b> else</b></p><p><b> {</b></p><p> cout<<"共計"<<n<<"名學(xué)生的記錄。"<<endl; </p><p>&
71、lt;b> return 1;</b></p><p><b> }</b></p><p><b> }</b></p><p> int search_3(void)</p><p><b> {</b></p><p>
72、<b> char ch;</b></p><p> cout<<"你確定要退出查詢嗎?(Y/N):";</p><p><b> do</b></p><p><b> {</b></p><p><b> cin>&
73、gt;ch;</b></p><p> }while(ch!='Y'&&ch!='y'&&ch!='N'&&ch!='n');</p><p> if(ch!='Y'||ch!='y')</p><p>&l
74、t;b> return 1;</b></p><p><b> return 0;</b></p><p><b> }</b></p><p> int search(void)</p><p><b> { </b></p><
75、;p><b> int yy; </b></p><p><b> int f;</b></p><p> if(numofstu==0)</p><p><b> {</b></p><p> system("cls");</p>
76、;<p> cout<<endl<<endl<<endl;</p><p> cout<<"無記錄可供查詢!"<<endl; </p><p> cout<<endl;</p><p> return 0;</p><p>&l
77、t;b> }</b></p><p> system("cls");</p><p><b> while(1)</b></p><p><b> {</b></p><p> system("cls");</p>&
78、lt;p> cout<<endl<<endl<<endl;</p><p> cout<<"請輸入查詢方式:"<<endl; </p><p> cout<<" 1.按學(xué)號"<<endl;</p><p> cout<
79、<" 2.按總評成績"<<endl;</p><p> cout<<" 3.退出"<<endl;</p><p> cout<<" 查詢方式: ";</p><p><b> do</b></p><p&g
80、t;<b> {</b></p><p><b> cin>>yy;</b></p><p> }while(yy!=1&&yy!=2&&yy!=3&&yy!=4&&yy!=5);</p><p> switch(yy) </p>
81、;<p><b> {</b></p><p> case 1: search_1();break ;</p><p> case 2: search_2();break ;</p><p> case 3: {f=search_3();</p><p><b> if(f==1)&l
82、t;/b></p><p><b> {</b></p><p> system("cls");</p><p> cout<<"已退出! "; </p><p> return 0 ;</p><p><b> }&
83、lt;/b></p><p><b> break ; </b></p><p><b> }</b></p><p><b> } </b></p><p><b> } </b></p><p>
84、<b> } </b></p><p> // updata()函數(shù) </p><p> // 功能:修改學(xué)生成績</p><p> int updata()</p><p><b> {</b></p><p><b> char ch;&l
85、t;/b></p><p> if(numofstu==0)</p><p><b> {</b></p><p> cout<<"無可供修改的記錄!"<<endl;</p><p> return 0 ;</p><p><b&g
86、t; }</b></p><p> cout<<"你確定要修改學(xué)生記錄嗎?(Y/N): ";</p><p><b> cin>>ch;</b></p><p> if(ch=='y'||ch=='Y')</p><p>&l
87、t;b> { </b></p><p> string num2;</p><p> student *p1;</p><p><b> p1=stud;</b></p><p> cout<<"請輸入要修改學(xué)生的學(xué)號:";</p><p&
88、gt; cin>>num2;</p><p><b> int i=0;</b></p><p> while(p1->num!=num2&&i<=numofstu)</p><p><b> {</b></p><p><b> i++;
89、</b></p><p> p1=p1->next; </p><p><b> } </b></p><p> if(i==numofstu)</p><p><b> {</b></p><p> cout<<"無符合條
90、件的學(xué)生記錄!"<<endl;</p><p><b> return 0;</b></p><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p>
91、<p> cout<<endl<<endl<<"請輸入學(xué)號: ";</p><p> cin>>p1->num; </p><p> cout<<"請輸入姓名: ";</p><p> cin>>p1->name;<
92、/p><p> p1->course[0]="yuwen";</p><p> p1->course[1]="yingyu";</p><p> p1->course[2]="shuxue";</p><p> p1->course[3]="wu
93、li";</p><p> p1->course[4]="huaxue";</p><p> p1->course[5]="shengwu";</p><p> cout<<endl<<"請輸入平時成績:"<<endl;</p>
94、<p> cout<<"語文: ";</p><p> cin>>p1->Pscore[0];</p><p> cout<<"英語: ";</p><p> cin>>p1->Pscore[1];</p><p> cou
95、t<<"數(shù)學(xué): ";</p><p> cin>>p1->Pscore[2];</p><p> cout<<"物理: ";</p><p> cin>>p1->Pscore[3];</p><p> cout<<"
96、;化學(xué): ";</p><p> cin>>p1->Pscore[4];</p><p> cout<<"生物: ";</p><p> cin>>p1->Pscore[5];</p><p> cout<<endl<<"請
97、輸入期末成績:"<<endl;</p><p> cout<<"語文: ";</p><p> cin>>p1->Mscore[0];</p><p> cout<<"英語: ";</p><p> cin>>p1-&g
98、t;Mscore[1];</p><p> cout<<"數(shù)學(xué): ";</p><p> cin>>p1->Mscore[2];</p><p> cout<<"物理: ";</p><p> cin>>p1->Mscore[3];&l
99、t;/p><p> cout<<"化學(xué): ";</p><p> cin>>p1->Mscore[4];</p><p> cout<<"生物: ";</p><p> cin>>p1->Mscore[5];</p><
100、p> for(int i=0;i<6;i++)</p><p><b> {</b></p><p> p1->zp[i]=0.3*(p1->Pscore[i])+0.7*(p1->Mscore[i]);</p><p><b> } </b></p><p>
101、;<b> }</b></p><p> cout<<" "<<endl; </p><p> system("cls");</p><p> cout<<endl<<endl<<endl;</p><p> c
102、out<<"學(xué)生記錄修改成功!"<<endl; </p><p> cout<<endl;</p><p><b> }</b></p><p><b> return 0;</b></p><p><b> }<
103、;/b></p><p> // delet()函數(shù)</p><p> // 功能: 刪除指定結(jié)點的記錄</p><p> int delet(void)</p><p><b> {</b></p><p> if(numofstu==0) </p>
104、<p><b> {</b></p><p> system("cls");</p><p> cout<<endl<<endl<<endl;</p><p> cout<<"\t\t* 無學(xué)生記錄可供刪除! * "<<e
105、ndl; </p><p> cout<<endl;</p><p> return 0;</p><p><b> }</b></p><p><b> int n=0;</b></p><p> student *p1,*p2,*p3;</p
106、><p> p2=p1=stud;</p><p> string num3;</p><p> cout<<"請輸入要刪除學(xué)生的學(xué)號:";</p><p> cin>>num3;</p><p><b> do</b></p>&l
107、t;p><b> {</b></p><p> if(p1->name==num3)</p><p><b> {</b></p><p><b> n=n+1;</b></p><p><b> break;</b></p&g
108、t;<p><b> }</b></p><p><b> else</b></p><p><b> p2=p1;</b></p><p> p1=p1->next; </p><p> } while(p1);</p><
109、p> if(p1==stud) </p><p> stud=p1->next; </p><p><b> else </b></p><p><b> {</b></p><p><b> p3=p1;</b></p><p&g
110、t; p2->next=p1->next;</p><p> delete(p3);</p><p> numofstu-=1;</p><p><b> }</b></p><p><b> if(n==0)</b></p><p><b>
111、 {</b></p><p> cout<<"無符合條件的學(xué)生記錄!"<<endl;</p><p><b> return 0;</b></p><p><b> }</b></p><p><b> else</b
112、></p><p> {cout<<"已刪除學(xué)號 "<<num3<<" 的學(xué)生記錄!"<<endl; </p><p><b> return 1;</b></p><p><b> }</b></p>
113、<p><b> }</b></p><p> // END()函數(shù) </p><p> // 功能:結(jié)束運行并退出</p><p> int END(void)</p><p><b> {</b></p><p> free(stud);&l
114、t;/p><p> system("cls");</p><p> cout<<endl<<endl<<endl;</p><p> cout<<"\t\t************************************ "<<endl<<end
115、l; </p><p> cout<<"\t\t* 系統(tǒng)即將關(guān)閉 * "<<endl<<endl; </p><p> cout<<"\t\t* 歡迎再次使用學(xué)生管理系統(tǒng) ! * "<<endl<<endl; </p&g
116、t;<p> cout<<"\t\t********************************** * "<<endl<<endl; </p><p> cout<<endl<<endl;</p><p> return 1; </p><p><b>
117、; }</b></p><p> // 文件存儲操作函數(shù) </p><p> // 功能:鏈表被保存至指定文件</p><p> int save_3()</p><p> {if(numofstu==0) </p><p> { system("cls"
118、;);</p><p> cout<<endl<<endl<<endl;</p><p> cout<<"無學(xué)生記錄可保存!"<<endl; </p><p> cout<<endl;</p><p> return 0;</p>
119、<p><b> }</b></p><p> system("cls");</p><p> cout<<endl<<endl<<endl;</p><p> char fname[30],a3[10];</p><p> for(int
120、 i=1;i<30;i++)</p><p> fname[i]='\0';</p><p> cout<<"\t\t輸入你所要保存的文件名: ";</p><p><b> cin>>a3;</b></p><p> fname[0]='
121、-';</p><p> strcat(fname,a3);strcat(fname,".txt.txt");</p><p> cout<<endl<<endl<<endl;</p><p> system("cls");</p><p> cout
122、<<"\t\t* 文件保存中 ...... * "<<endl<<endl;</p><p> ofstream outfile1(fname,ios::out); </p><p> if(!outfile1) </p><p> {cerr<
123、<"open f1.dat error!"<<endl;</p><p><b> exit(1);</b></p><p><b> }</b></p><p> outfile1<<endl<<"共計"<<numofst
124、u<<"條學(xué)生記錄!"<<endl;</p><p> student *p1;</p><p><b> p1=stud;</b></p><p><b> int t=1;</b></p><p> if(numofstu==0)</p
125、><p> { cout<<"無可顯示的記錄!"<<endl;</p><p> outfile1<<"無可顯示的記錄!"<<endl;</p><p><b> return 0;</b></p><p><b>
126、; }</b></p><p> outfile1<<" 學(xué)生記錄: "<<endl<<endl;</p><p><b> do</b></p><p><b> { t++; </b></p><p> out
127、file1<<"學(xué)號:"<<p1->num<<endl;</p><p> outfile1<<"姓名:"<<p1->name<<endl;</p><p> outfile1<<"所學(xué)科目: ";</p><p
128、> for(int i=0;i<6;i++)</p><p> outfile1<<p1->course[i]<<" ";</p><p> outfile1<<endl;</p><p> outfile1<<"平時成績: ";</p>
129、;<p> for(i=0;i<6;i++)</p><p> outfile1<<p1->Pscore[i]<<" ";</p><p> outfile1<<endl;</p><p> outfile1<<"期末成績: ";&l
130、t;/p><p> for(i=0;i<6;i++)</p><p> outfile1<<p1->Mscore[i]<<" ";</p><p> outfile1<<endl;</p><p> outfile1<<"總評成績: &q
131、uot;;</p><p> for(i=0;i<6;i++)</p><p> outfile1<<p1->zp[i]<<" ";</p><p> outfile1<<endl; </p><p> outfile1<<endl<
132、<endl;</p><p> if(i%10==0&&i!=0)</p><p> { outfile1<<"已顯示10個學(xué)生的記錄"<<endl;</p><p> system("pause");</p><p> outfile1<
133、<endl<<endl; </p><p><b> }</b></p><p> p1=p1->next;</p><p> }while(t<=numofstu); </p><p> outfi
134、le1<<endl<<"共計"<<numofstu<<"條學(xué)生記錄!"<<endl;</p><p> outfile1.close();</p><p> cout<<endl<<endl<<endl;</p><p> s
135、ystem("cls");</p><p> cout<<"\t\t* 文件已成功保存! * "<<endl<<endl; </p><p><b> return 1;</b></p><p><b> }</b></p>
136、<p> int save_1()</p><p> {if(numofstu==0) </p><p> {system("cls");</p><p> cout<<endl<<endl<<endl;</p><p> cout<<&qu
137、ot; 無學(xué)生記錄可供保存! "; </p><p> cout<<endl;</p><p> return 0;</p><p><b> }</b></p><p> cout<<endl<<endl<<endl;</p>&
138、lt;p> student *p1;</p><p><b> p1=stud;</b></p><p> char fname[30],a1[10],a2[10],a3[10];</p><p> for(int i=1;i<30;i++)</p><p> fname[i]='\0
139、39;;</p><p> cout<<"\t\t輸入你所要保存的年級號(例如:1~4); ";</p><p><b> cin>>a1;</b></p><p> cout<<"\t\t輸入你所要保存的班級號(例如:23): ";</p><
140、;p><b> cin>>a2;</b></p><p> cout<<"\t\t輸入你所要保存的課程名(例如:yuwen,yingyu,shuxue ";</p><p> cout<<"\t\t wuli,huaxue,shen
141、gwu): ";</p><p><b> cin>>a3;</b></p><p> fname[0]='G';</p><p> fname[1]=a1[0];</p><p> fname[2]='C';</p><p> fn
142、ame[3]=a2[0];</p><p> fname[4]=a2[1];</p><p> strcat(fname,a3);strcat(fname,".txt.txt");</p><p><b> int t;</b></p><p> for(int j=0;j<6;j++)
143、</p><p> if(p1->course[j]==a3)</p><p><b> t=j;</b></p><p> cout<<endl<<endl<<endl;</p><p> system("cls");</p><
144、p> cout<<"文件保存中 ......";</p><p> ofstream outfile1(fname,ios::out); </p><p> if(!outfile1) </p><p> {cerr<<"open f1.dat err
145、or!"<<endl;</p><p><b> exit(1);</b></p><p><b> }</b></p><p> outfile1<<"************* 單科成績表***************"<<endl<<
146、"年級: "<<a1<<endl<<"班級:"<<a2<<endl<<"科目:"<<a3<<endl;</p><p><b> i=1;</b></p><p> int numt=0;</p>
147、<p><b> int k=0;</b></p><p> if(numofstu==0)</p><p> { cout<<"無可顯示的記錄!"<<endl;</p><p> outfile1<<"無可保存的記錄!"<<endl
148、;</p><p><b> return 0;</b></p><p><b> }</b></p><p> outfile1<<"學(xué)號: "<<"姓名: "<<"平時成績: "<<"期
149、末成績: "<<"總評成績: "<<endl;</p><p><b> do</b></p><p><b> { i++; </b></p><p> if(p1->num[4]==a1[0]&&p1->num[5]==a2[
150、0]&&p1->num[6]==a2[1])</p><p> {outfile1<<" "<<p1->num<<” "<<p1->name<<" "<<p1->Pscore[t]<<" "<&l
151、t;p1->Mscore[t]<<" "<<p1->zp[t]<<" ";</p><p> outfile1<<endl; </p><p><b> numt++;</b></p><p><b> }</b&g
152、t;</p><p> p1=p1->next;</p><p> }while(i<=numofstu); </p><p> outfile1<<endl<<"共計"<<numt<<"條學(xué)生記錄!"<<endl;</p><p
153、> outfile1.close();</p><p> cout<<endl<<endl<<endl;</p><p> system("cls");</p><p> cout<<"文件已成功保存!"; </p><p><b>
154、; return 1;</b></p><p><b> }</b></p><p> int save_2()</p><p> {if(numofstu==0) </p><p> {system("cls");</p><p> cout
155、<<endl<<endl<<endl;</p><p> cout<<"無學(xué)生記錄可供保存! "; </p><p> cout<<endl;</p><p> return 0;</p><p><b> }</b></p&
156、gt;<p> system("cls");</p><p> cout<<endl<<endl<<endl;</p><p> student *p1;</p><p><b> p1=stud;</b></p><p> student
157、st;</p><p> char fname[30],a3[10];</p><p> for(int i=1;i<30;i++)</p><p> fname[i]='\0';</p><p> cout<<"\t\t輸入你所要保存的文件名: ";</p>&l
158、t;p><b> cin>>a3;</b></p><p> fname[0]='-';</p><p> strcat(fname,a3);strcat(fname,".txt.txt");</p><p> fstream iofile(fname,ios::out|ios::b
159、inary);</p><p> if(!iofile)</p><p> {cerr<<"open error!"<<endl;</p><p><b> abort();</b></p><p><b> }</b></p>&l
160、t;p> cout<<"存入中------ :"<<endl;</p><p> iofile.write((char *)&numofstu,sizeof(numofstu));</p><p><b> i=1; </b></p><p><b> do</b
161、></p><p> { displaytable(p1);</p><p> iofile.seekp(0,ios::end);</p><p><b> st=*p1;</b></p><p> iofile.write((char *)&st,sizeof(st));</p>
162、<p> p1=p1->next;</p><p><b> i++; </b></p><p> }while(i<=numofstu); </p><p> iofile.close();</p><p> cout<<"已存入:"<<en
163、dl;</p><p><b> return 1;</b></p><p><b> }</b></p><p> int save()</p><p> {system("cls");</p><p><b> do</b&g
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- c++課程設(shè)計--簡單成績管理系統(tǒng)
- c++課程設(shè)計報告--成績管理系統(tǒng)
- c++課程設(shè)計----學(xué)生成績管理系統(tǒng)
- c++課程設(shè)計----學(xué)生成績管理系統(tǒng)
- 學(xué)生成績管理系統(tǒng)c++課程設(shè)計
- c++課程設(shè)計-學(xué)生成績管理系統(tǒng)
- c++課程設(shè)計學(xué)生學(xué)籍成績管理系統(tǒng)
- c++課程設(shè)計---學(xué)生成績管理系統(tǒng)
- c++課程設(shè)計---學(xué)生成績管理系統(tǒng)
- c++課程設(shè)計——學(xué)生成績管理系統(tǒng)
- c++課程設(shè)計--學(xué)生成績管理系統(tǒng)
- c++學(xué)生成績管理系統(tǒng)課程設(shè)計
- c++課程設(shè)計--學(xué)生成績管理系統(tǒng)
- c++課程設(shè)計--- 學(xué)生成績管理系統(tǒng)設(shè)計
- c++學(xué)生成績管理系統(tǒng)課程設(shè)計報告
- c++學(xué)生成績管理系統(tǒng)課程設(shè)計報告
- java課程設(shè)計-學(xué)生學(xué)習(xí)成績管理
- c++課程設(shè)計--學(xué)生成績管理
- c++課程設(shè)計(研究生成績管理系統(tǒng))
- c++學(xué)生成績管理系統(tǒng)課程設(shè)計報告
評論
0/150
提交評論