2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩24頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論