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

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、<p><b>  軟件設(shè)計(jì)報(bào)告</b></p><p>  題 目: 學(xué)生成績(jī)信息管理系統(tǒng) </p><p><b>  一、課程設(shè)計(jì)目的</b></p><p>  1.熟悉C語言程序的編輯、編譯鏈接和運(yùn)行的過程,至少能夠用一種編譯器較熟練地編輯、編譯及調(diào)試程序。<

2、/p><p>  2.掌握C語言數(shù)據(jù)類型,如何定義一個(gè)整型、字符型和實(shí)型的變量,以及對(duì)它們賦值的方法。</p><p>  3.熟練運(yùn)用if語句和switch語句以及嵌套應(yīng)用。涉及循環(huán)調(diào)用的,了解并掌握三種控制語句while、do-while和for語句。</p><p>  4.學(xué)習(xí)并掌握C語言定義函數(shù)的基本方法、聲明函數(shù)及調(diào)用函數(shù)的方法和過程。</p>

3、<p>  5. 掌握文件和文件指針的概念以及文件的定義方法,認(rèn)識(shí)文件打開、關(guān)閉、讀、寫等文件基本操作函數(shù)。</p><p>  6.掌握結(jié)構(gòu)體類型變量、數(shù)組的定義和使用。</p><p>  7.了解指針和鏈表的概念,掌握指針的定義和使用指針變量的方法以及鏈表的正確用法。靈活使用鏈表來儲(chǔ)存學(xué)生信息。</p><p>  8. 掌握數(shù)組的定義、引用以及輸

4、入輸出的方法、通過字符數(shù)組存儲(chǔ)字符串,進(jìn)一步使用字符串</p><p>  二、課程設(shè)計(jì)內(nèi)容簡(jiǎn)介</p><p>  學(xué)生成績(jī)管理主要功能:</p><p> ?。?)能按學(xué)期、按班級(jí)完成對(duì)學(xué)生成績(jī)的錄入、修改</p><p> ?。?)能按班級(jí)統(tǒng)計(jì)學(xué)生的成績(jī),求學(xué)生的總分及平均分,并能根據(jù)學(xué)生的平均成績(jī)進(jìn)行排序</p><

5、;p> ?。?)能查詢學(xué)生成績(jī),不及格科目及學(xué)生名單</p><p> ?。?)能按班級(jí)輸出學(xué)生的成績(jī)單</p><p>  開發(fā)工具——Visual C++ 6.0</p><p>  運(yùn)行平臺(tái)——Windows XP</p><p><b>  三、需求分析</b></p><p>&l

6、t;b>  系統(tǒng)功能:</b></p><p>  (1)能按學(xué)期、按班級(jí)完成對(duì)學(xué)生成績(jī)的錄入、修改</p><p> ?。?)能按班級(jí)統(tǒng)計(jì)學(xué)生的成績(jī),求學(xué)生的總分及平均分。</p><p> ?。?)能根據(jù)學(xué)生的平均成績(jī)進(jìn)行排序</p><p>  (4)能查詢學(xué)生總成績(jī),平均分</p><p> 

7、?。?)能按學(xué)號(hào),姓名輸出學(xué)生的成績(jī)單</p><p>  (6)可以保存到文件(附加功能)</p><p> ?。?)可以從文件讀入已有的文件(附加功能)</p><p>  (8)以菜單方式工作</p><p><b>  性能描述:</b></p><p>  各種功能都可以滿足;程序相對(duì)較

8、小,因而運(yùn)行時(shí)反應(yīng)比較迅速,不存在響應(yīng)不及時(shí)地問題。</p><p><b>  四、概要設(shè)計(jì)</b></p><p>  1.學(xué)生成績(jī)管理系統(tǒng)模塊圖:</p><p>  2.程序可以滿足以下功能:</p><p>  1.各模塊間通過菜單切換和調(diào)用</p><p>  2.主函數(shù)通過調(diào)用菜單函

9、數(shù)實(shí)現(xiàn)對(duì)各功能模塊的調(diào)用,各功能模塊間根據(jù)需要可相互調(diào)用。</p><p>  3.程序能夠保證各模塊功能的獨(dú)立和數(shù)據(jù)共享。</p><p>  4.相近功能以級(jí)聯(lián)菜單的形式集成。</p><p><b>  五、詳細(xì)設(shè)計(jì)</b></p><p>  1.主要功能模塊的流程圖如下:</p><p>

10、;<b>  主函數(shù)</b></p><p><b>  添加信息:</b></p><p><b>  查詢模塊:</b></p><p><b>  輸出模塊:</b></p><p><b>  修改模塊:</b></p&

11、gt;<p><b>  排序模塊:</b></p><p><b>  保存模塊</b></p><p><b>  讀取模塊</b></p><p>  2. 主要函數(shù)說明:</p><p>  mangercode_message ()</p>

12、<p><b>  類型 void</b></p><p>  密碼模塊 只有密碼正確才可打開,以便使用者保護(hù)所存儲(chǔ)的信息。</p><p>  read_message()</p><p><b>  類型 void</b></p><p>  讀取模塊 可以將所處出的信息讀取出來,方

13、便使用。</p><p>  save_message()</p><p><b>  類型 void</b></p><p>  保存模塊 可將所輸入的信息以文件形式保存起來,具體輸入信息會(huì)以txt格式保存。</p><p>  input_message()</p><p><b>

14、  類型 void</b></p><p>  錄入模塊 以鍵盤形式輸入學(xué)生的成績(jī)信息。</p><p>  output_message()</p><p><b>  類型 void</b></p><p>  瀏覽模塊 將所輸入的學(xué)生信息打印輸出,出現(xiàn)在顯示器上。</p><p>

15、;  inqure_message()</p><p><b>  類型 void</b></p><p>  查詢模塊 可按學(xué)生學(xué)號(hào)和學(xué)生姓名查詢學(xué)生成績(jī) </p><p>  insert_message()</p><p><b>  類型 void</b></p><p&

16、gt;  添加模塊 可隨時(shí)添加一名學(xué)生信息。</p><p>  del_message()</p><p><b>  類型 void</b></p><p>  刪除模塊 可按學(xué)號(hào)刪除其中一名學(xué)生的所有成績(jī)信息。</p><p>  sort_message()</p><p><b&g

17、t;  類型 void</b></p><p>  排序模塊 可將錄入的學(xué)生成績(jī)信息按平均分由大到小排序。</p><p>  revise_message()</p><p><b>  類型 void</b></p><p>  修改模塊 可讀學(xué)生的姓名學(xué)號(hào)及各科成績(jī)進(jìn)行修改。</p>&l

18、t;p>  count_message()</p><p><b>  類型 void</b></p><p>  統(tǒng)計(jì)模塊 將學(xué)生的所有成績(jī)相加,并按總成績(jī)排名。</p><p>  manger_message()</p><p><b>  類型 void</b></p>

19、<p>  管理模塊 顯示該程序的主菜單。</p><p><b>  六、調(diào)試與測(cè)試</b></p><p><b>  1總體過程</b></p><p>  編譯和調(diào)試工具:選擇Visual C++6.0,該工具穩(wěn)定,其中有一個(gè)強(qiáng)大的調(diào)試工具,我比較熟悉。</p><p><b

20、>  2遇到的問題</b></p><p>  在兩周的時(shí)間里,不斷地對(duì)程序及各模塊進(jìn)行修改、編譯、調(diào)試,其間遇到很多問題,這里只選幾個(gè)有代表性的具體討論。</p><p>  (1)調(diào)試“創(chuàng)建”模塊時(shí),遇到如下的一段程序:</p><p>  運(yùn)行中,當(dāng)輸入錯(cuò)誤的成績(jī)時(shí),程序可能會(huì)進(jìn)入死循環(huán)。</p><p>  據(jù)分析,

21、程序本身并沒有錯(cuò)誤,但由于涉及指針的操作,所以在運(yùn)行中出現(xiàn)了未知的錯(cuò)誤。</p><p>  開始時(shí)懷疑是程序代碼的缺陷,但經(jīng)過反反復(fù)復(fù)的分析和調(diào)試后確定了原因,……。通過這一問題的深入研究,使我對(duì)C語言的特性有了進(jìn)一步的了解。</p><p>  (2) 借用了老師所給例子中的一個(gè)創(chuàng)建鏈表函數(shù),與習(xí)慣不同的是,該函數(shù)是從尾到頭來建立的。與順序建立的鏈表相比,在實(shí)際運(yùn)行中并沒有多大區(qū)別,但

22、不失為一種創(chuàng)新的思路,值得我們學(xué)習(xí)。</p><p> ?。?)測(cè)試用例具有一定的廣泛性。創(chuàng)建鏈表時(shí)輸入了不同班級(jí)、學(xué)期的成績(jī),而且及格與不及格交叉輸入,經(jīng)過多番調(diào)試,運(yùn)行結(jié)果也符合預(yù)期。說明程序具有一定的可靠性和穩(wěn)定性。</p><p><b>  七、出現(xiàn)錯(cuò)誤</b></p><p>  C:\Documents and Settings\

23、XY\桌面\myprj\3.c(24) : error C2065: 'student' : undeclared identifier</p><p>  Error executing cl.exe. 未聲明的標(biāo)志 </p><p>  c:\documents and settings\xy\桌面\myprj\15.c(36) : warning C401

24、3: 'getch' undefined; assuming extern returning int ‘getch’未定義 ,假定一個(gè)虛偽指令返回整型</p><p>  c:\documents and settings\xy\桌面\myprj\15.c(50) : fatal error C1004: unexpected end of file found 期待的結(jié)尾未建立</p

25、><p>  c:\documents and settings\xy\桌面\myprj\2.c(32) : error C2143: syntax error : missing ';' before '}'</p><p>  error C2447: missing function header (old-style formal list?) ‘}’

26、前缺少‘;’</p><p>  warning C4060: switch statement contains no 'case' or 'default' labels switch指令沒有包含case和default符號(hào)</p><p>  error C2043: illegal break 非法的‘break’</p><

27、p>  expected constant expression 預(yù)期的常量表達(dá)式</p><p>  cannot allocate an array of constant size 0 不能分配一個(gè)數(shù)組的常量0的大小</p><p><b>  八、參考文獻(xiàn):</b></p><p>  1. 王曙燕主編,C語言程序設(shè)計(jì),科學(xué)出

28、版社,2005年</p><p>  2. 譚浩強(qiáng),《C程序設(shè)計(jì)》,清華大學(xué)出版社 2002年</p><p>  #include<stdio.h></p><p>  #include<stdlib.h></p><p>  #include<string.h></p><p>

29、  #include<conio.h></p><p>  #define N 10</p><p>  #define CODE 321</p><p><b>  int sum;</b></p><p>  void mangercode_message() /*密碼模塊*/&

30、lt;/p><p><b>  {int m;</b></p><p>  void manger_message();</p><p>  printf("\n *****請(qǐng)輸入一個(gè)密碼*****\n");</p><p>  scanf("%d

31、",&m);</p><p><b>  switch(m)</b></p><p><b>  {</b></p><p>  case 321: printf("\n 進(jìn)入下一菜單\n\n");</p><p>  manger_m

32、essage();</p><p>  default: printf("\n 你不能進(jìn)入\n"); break;</p><p><b>  }</b></p><p>  printf("\n 按任意鍵返回主菜單\n");</p>&l

33、t;p><b>  }</b></p><p>  struct stu_type</p><p><b>  {</b></p><p>  int number;</p><p>  char name[20];</p><p><b>  int mat

34、h;</b></p><p>  int english;</p><p>  int computer;</p><p>  int score;</p><p>  int average;</p><p><b>  }stu[N];</b></p><p&g

35、t;  int read_message()</p><p><b>  {</b></p><p><b>  FILE *fp;</b></p><p><b>  int i;</b></p><p>  fp=fopen("d:\\studentscore.t

36、xt","rt");</p><p>  if(fp==NULL)</p><p><b>  {</b></p><p>  printf(" 無學(xué)生信息,不能讀\n");</p><p><b>  }</b>&l

37、t;/p><p><b>  else</b></p><p><b>  {</b></p><p><b>  i=0;</b></p><p><b>  for(;;)</b></p><p><b>  { <

38、/b></p><p>  if((fread(&stu[i],sizeof(struct stu_type),1,fp))!=1) break; </p><p><b>  i++;</b></p><p><b>  }</b></p><p><b>  retu

39、rn i;</b></p><p>  fclose(fp);</p><p><b>  }</b></p><p><b>  }</b></p><p>  void save_message() /*保存模塊*/ </p><p&

40、gt;  { FILE *fp;</p><p><b>  int i;</b></p><p>  fp=fopen("d:\\studentscore.txt","wt+");</p><p>  if(fp==NULL)</p><p><b>  {<

41、;/b></p><p>  printf(" 不能讀\n");</p><p><b>  }</b></p><p>  for(i=0;i<=sum;i++)</p><p><b>  {</b></p><

42、p>  fwrite(&stu[i],sizeof(struct stu_type),1,fp);</p><p><b>  }</b></p><p>  fclose(fp);</p><p><b>  }</b></p><p>  int input_message()

43、 /*錄入模塊*/</p><p><b>  {</b></p><p>  int i=0,choice;</p><p><b>  do</b></p><p><b>  {</b></p><p>  pri

44、ntf("\n\n第%d個(gè)學(xué)生",i+1);</p><p>  printf("\n\n 學(xué)號(hào):");</p><p>  scanf("%d",&stu[i].number);</p><p>  printf("\n\n 姓名:");<

45、/p><p>  getchar();</p><p>  scanf("%s",stu[i].name);</p><p>  printf("\n\n 數(shù)學(xué)");</p><p>  scanf("%d",&stu[i].math);</p>&

46、lt;p>  printf("\n\n 英語");</p><p>  scanf("%d",&stu[i].english);</p><p>  printf("\n\n 計(jì)算機(jī)");</p><p>  scanf("%d",&

47、stu[i].computer);</p><p>  stu[i].score=stu[i].math+stu[i].english+stu[i].computer;</p><p>  stu[i].average=stu[i].score/3;</p><p>  printf("\n\n 總成績(jī)?yōu)?%d",stu[i].sc

48、ore);</p><p>  printf("\n\n 平均分為:%d",stu[i].average);</p><p><b>  i++;</b></p><p><b>  sum=i;</b></p><p>  printf("\n\n

49、 是否繼續(xù)?(1.是 2.否)");</p><p>  scanf("%d",&choice);</p><p>  if(choice==1)</p><p>  printf("\n 繼續(xù)!");</p><p>  else break;</p>

50、<p>  }while(choice==1);</p><p>  printf("\n 學(xué)生成績(jī)完畢");</p><p>  printf("\n\n 按任意鍵返回主菜單!");</p><p><b>  getch();</b><

51、/p><p>  return (--i);</p><p>  system("cls");</p><p><b>  }</b></p><p>  void output_message(int i) /*瀏覽模塊*/</p><p>&

52、lt;b>  {</b></p><p><b>  int j;</b></p><p>  printf("\n\n 學(xué)生成績(jī)表\n");</p><p>  printf("\n**************************************

53、***************************");</p><p>  printf("\n\n 學(xué)號(hào) 姓名 數(shù)學(xué) 英語 計(jì)算機(jī) 總成績(jī) 平均分");</p><p>  printf("\n\n-----------------------------------------------------------------");

54、</p><p>  for(j=0;j<=i;j++)</p><p><b>  {</b></p><p>  printf("\n\n%d %s %d %d %d %d %d",stu[j].number,stu[j].name,stu[j].math,stu[j].english,stu[j].compute

55、r,stu[j].score,stu[j].average);</p><p>  printf("\n\n");</p><p><b>  }</b></p><p>  printf("\n************************************************************

56、*****\n");</p><p>  printf(" 按任意鍵返回主菜單!");</p><p><b>  getch();</b></p><p>  system("cls");</p><p><b>  }<

57、/b></p><p>  void inqure_num() /*查詢模塊*/</p><p><b>  {</b></p><p>  int i,j=0,inqure_num;</p><p>  printf("\n輸入學(xué)生學(xué)號(hào):");</p&

58、gt;<p>  scanf("%d",&inqure_num);</p><p>  for(i=0;i<N;i++)</p><p><b>  {</b></p><p>  if(stu[i].number==inqure_num)</p><p><b>

59、;  {</b></p><p>  printf("\n 該學(xué)生信息\n");</p><p>  printf("\n\n-------------------------------------------------------------------------\n");</p

60、><p>  printf("\n\n學(xué)號(hào)--姓名--數(shù)學(xué)--英語--計(jì)算機(jī)--總成績(jī)--平均分\n\n");</p><p>  printf("%3d%8s%5d%7d%8d%10d%14d",stu[i].number,stu[i].name,stu[i].math,stu[i].english,stu[i].computer,stu[i].sco

61、re,stu[i].average);</p><p>  printf("\n\n--------------------------------------------------------------------------\n");</p><p><b>  }</b></p><p><b>  el

62、se j++;</b></p><p><b>  if(j==N)</b></p><p>  printf("\n 這個(gè)學(xué)生不存在!");</p><p><b>  }</b></p><p>  printf("\n\n 按

63、任意鍵返回主菜單!");</p><p><b>  getch();</b></p><p>  system("cls");</p><p><b>  }</b></p><p>  void inqure_name()</p><p>&

64、lt;b>  {</b></p><p>  int i,j=0;</p><p>  char inqure_name[20];</p><p>  printf("\n輸入學(xué)生姓名:");</p><p>  scanf("%s",inqure_name);</p>

65、<p>  for(i=0;i<N;i++)</p><p><b>  {</b></p><p>  if (strcmp(stu[i].name,inqure_name)==0)</p><p><b>  {</b></p><p>  printf("\n

66、 該學(xué)生信息\n");</p><p>  printf("\n\n-------------------------------------------------------------------------\n");</p><p>  printf("\n\n學(xué)號(hào)--姓名--數(shù)學(xué)--英語--計(jì)算機(jī)--總

67、成績(jī)--平均分\n\n");</p><p>  printf("%3d%8s%5d%7d%8d%10d%14d",stu[i].number,stu[i].name,stu[i].math,stu[i].english,stu[i].computer,stu[i].score,stu[i].average);</p><p>  printf("\

68、n\n--------------------------------------------------------------------------\n");</p><p><b>  }</b></p><p><b>  else j++;</b></p><p><b>  if(j==N

69、)</b></p><p>  printf("\n 這個(gè)學(xué)生不存在!");</p><p><b>  }</b></p><p>  printf("\n\n 按任意鍵返回主菜單!");</p><p><b>  getch()

70、;</b></p><p>  system("cls");</p><p><b>  }</b></p><p>  void inqure_message()</p><p>  { int choice;</p><p><b>  do<

71、;/b></p><p>  {printf(" 1.按學(xué)號(hào)查詢\n\n");</p><p>  printf(" 2.按姓名查詢\n\n");</p><p>  printf("

72、 0.退出\n\n");</p><p>  scanf("%d",&choice);</p><p>  switch(choice)</p><p><b>  { </b></p><p>  case 1:inqure_num();break;<

73、/p><p>  case 2:inqure_name();break;</p><p>  case 0:break;</p><p><b>  }</b></p><p>  }while(choice!=0);</p><p><b>  }</b></p>

74、<p>  int insert_message(int i) /*添加模塊*/</p><p><b>  {</b></p><p>  int choice;</p><p>  char flag;</p><p>  printf("\n\n

75、 增加一個(gè)學(xué)生信息!");</p><p>  printf("\n**********************************************************");</p><p><b>  do</b></p><p><b>  { i++;</b>

76、</p><p>  stu[i].number=sum+1;</p><p>  printf("\n\n 新學(xué)生的學(xué)號(hào)");</p><p>  scanf("%d",&stu[i].number);</p><p>  printf("\n\n 新學(xué)生的姓名")

77、;</p><p>  getchar();</p><p>  scanf("%s",&stu[i].name);</p><p>  printf("\n\n 數(shù)學(xué)成績(jī)");</p><p>  scanf("%d",&stu[i].math);</p&

78、gt;<p>  printf("\n\n 英語成績(jī)");</p><p>  scanf("%d",&stu[i].english);</p><p>  printf("\n\n 計(jì)算機(jī)成績(jī)");</p><p>  scanf("%d",&st

79、u[i].computer);</p><p>  stu[i].score=stu[i].math+stu[i].computer+stu[i].english;</p><p>  stu[i].average=stu[i].score/3;</p><p>  printf("\n\n 總成績(jī)%d",stu[i].score);<

80、/p><p>  printf("\n\n 平均分%d",stu[i].average);</p><p><b>  sum=i;</b></p><p>  printf("\n\n 是否繼續(xù)?(1.是 2.否)");</p><p>  scanf("%d&qu

81、ot;,&choice);</p><p>  if(choice==1)</p><p><b>  {</b></p><p>  printf("\n 繼續(xù)");</p><p><b>  flag=1;</b></p><p><b

82、>  }</b></p><p>  else flag=0;</p><p>  }while(flag==1);</p><p>  printf("\n 按任意鍵返回主菜單!");</p><p><b>  return i;</b></p

83、><p>  system("cls");</p><p><b>  }</b></p><p>  void del_message() /*刪除模塊*/</p><p><b>  {</b></p><p>  

84、int i=0,j,choice,del_num;</p><p><b>  do</b></p><p><b>  {</b></p><p>  printf("\n 輸入要?jiǎng)h除的學(xué)號(hào)");</p><p>  scanf("%d",&del_

85、num);</p><p>  for(i=0;i<N;i++)</p><p>  { if(stu[i].number==del_num)</p><p><b>  {</b></p><p>  printf("\n\n 刪除他的信息");</p><p>  f

86、or(j=i;j<N;j++)</p><p>  { stu[j]=stu[j+1];</p><p><b>  }</b></p><p>  printf("\n\n 刪除他的信息:\n");</p><p>  printf("\n\n 學(xué)號(hào) 姓名 數(shù)學(xué) 英語 計(jì)算機(jī) 總成績(jī)

87、 平均分");</p><p>  printf("\n\n-------------------------------------------------------------------");</p><p>  for(i=0;i<N;i++)</p><p>  { printf("\n\n %d %s

88、 %d %d %d %d %d",stu[i].number,stu[i].name,stu[i].math,stu[i].english,stu[i].computer,stu[i].score,stu[i].average);</p><p>  printf("\n\n");</p><p>  printf(" -

89、------------------------------------------------------------------");</p><p><b>  }</b></p><p>  if(i==del_num)</p><p>  {printf("\n 這個(gè)學(xué)生不存在!");</p>

90、;<p>  system("cls");</p><p><b>  }</b></p><p>  printf("\n\n 繼續(xù)刪除?(1.是 2.否)");</p><p>  scanf("%d",&choice);</p><p&g

91、t;  if(choice==1) printf("\n 繼續(xù)!\n");</p><p>  if(choice==2) break;</p><p><b>  }</b></p><p><b>  }</b></p><p>  }while(choice==1);&

92、lt;/p><p>  printf("\n\n 按任意鍵返回主菜單!");</p><p>  system("cls");</p><p><b>  }</b></p><p>  void sort_message()

93、 /*排序模塊*/</p><p><b>  {</b></p><p><b>  int i,j;</b></p><p>  struct stu_type k;</p><p>  for(i=0;i<N-1;i++)</p><p><b>  

94、{</b></p><p>  for(j=i+1;j<N;j++)</p><p>  { if(stu[i].average<stu[j].average)</p><p>  { k=stu[i];</p><p>  stu[i]=stu[j];</p><p><b> 

95、 stu[j]=k;</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  printf("\n\n 學(xué)生平均分按從大到小排列"

96、;);</p><p>  printf("\n\n 學(xué)號(hào) 姓名 數(shù)學(xué) 英語 計(jì)算機(jī) 總成績(jī) 平均分");</p><p>  printf("\n\n------------------------------------------------------------------");</p><p>  for

97、(i=0;i<N-1;i++)</p><p><b>  {</b></p><p>  printf("\n\n %d %s %d %d %d %d %d",stu[i].number,stu[i].name,stu[i].math,stu[i].english,stu[i].computer

98、,stu[i].score,stu[i].average);</p><p>  printf("\n\n");</p><p>  printf("---------------------------------------------------------------------");</p><p><b>

99、;  }</b></p><p>  printf("\n\n 按任意鍵返回主菜單!");</p><p><b>  getch();</b></p><p>  system("cls");</p><p><b>  }</

100、b></p><p>  void revise_message() /*修改模塊*/</p><p><b>  {</b></p><p><b>  int i=0;</b></p><p>  int choice,rechoice;</p&g

101、t;<p>  int revise_num;</p><p><b>  do</b></p><p><b>  {</b></p><p>  printf("\n\n 輸入學(xué)號(hào)!");</p><p>  scanf("%d&quo

102、t;,&revise_num);</p><p>  for(i=0;i<N;i++)</p><p><b>  {</b></p><p>  if(stu[i].number==revise_num)</p><p><b>  {</b></p><p>

103、;  printf("\n 這個(gè)學(xué)生的信息:\n");</p><p>  printf("\n\n-----------------------------------------------------------------------\n");</p><p>  printf("\n\n學(xué)號(hào)--姓名--數(shù)學(xué)--英語--計(jì)算機(jī)--總

104、成績(jī)--平均分\n\n");</p><p>  printf("%8d %8s %d %d %d %d %d",stu[i].number,stu[i].name,stu[i].math,stu[i].english,stu[i].computer,stu[i].score,stu[i].average);</p><p>  printf(&qu

105、ot;\n\n--------------------------------------------------------------------------");</p><p>  printf("\n\n 需要校正的項(xiàng)\n");</p><p>  printf("\n\n 1.姓名\n");</p><p&g

106、t;  printf("\n\n 2.數(shù)學(xué)\n");</p><p>  printf("\n\n 3.英語\n");</p><p>  printf("\n\n 4.計(jì)算機(jī)\n");</p><p>  printf("\n\n 0.返回主菜單\n");</p><

107、;p>  printf("\n\n 請(qǐng)選擇(0---4):");</p><p>  scanf("%d",&choice);</p><p>  switch(choice)</p><p><b>  {</b></p><p>  case 1: printf(

108、"\n 輸入姓名:");</p><p>  getchar();</p><p>  scanf("%s",stu[i].name);</p><p><b>  break;</b></p><p>  case 2: printf("\n 輸入數(shù)學(xué)成績(jī):&quo

109、t;);</p><p>  scanf("%d",&stu[i].math);</p><p><b>  break;</b></p><p>  case 3: printf("\n 輸入英語成績(jī):");</p><p>  scanf("%d"

110、,&stu[i].english);</p><p><b>  break;</b></p><p>  case 4: printf("\n 輸入計(jì)算機(jī)成績(jī):");</p><p>  scanf("%D",&stu[i].computer);</p><p>

111、;<b>  break;</b></p><p>  case 0: break;</p><p><b>  }</b></p><p>  printf("\n\n 修改后的學(xué)生信息:");</p><p>  stu[i].score=stu[i].mat

112、h+stu[i].english+stu[i].computer;</p><p>  stu[i].average=stu[i].score/3;</p><p>  printf("\n\n-------------------------------------------------------------------------\n");</p>

113、<p>  printf("\n\n學(xué)號(hào)--姓名--數(shù)學(xué)--英語--計(jì)算機(jī)--總成績(jī)--平均分\n\n");</p><p>  printf("%8d %8s %d %d %d %d %d",stu[i].number,stu[i].name,stu[i].math,stu[i].english,stu[i].computer,stu[i].scor

114、e,stu[i].average);</p><p>  printf("\n\n---------------------------------------------------------------------------");</p><p><b>  }</b></p><p><b>  if(i

115、==N)</b></p><p><b>  {</b></p><p>  printf("\n 這個(gè)學(xué)生不存在!");</p><p>  system("cls");</p><p><b>  }</b></p><p&

116、gt;<b>  }</b></p><p>  printf("\n\n 是否繼續(xù)修改?(1.是 2.否)");</p><p>  scanf("%d",&rechoice);</p><p>  if(rechoice==1)</p><p>  printf(&qu

117、ot;\n 繼續(xù)!\n");</p><p>  if(rechoice==2)</p><p><b>  break;</b></p><p>  }while(rechoice==1);</p><p>  printf("\n 按任意鍵返回主菜單!");&

118、lt;/p><p>  system("cls");</p><p><b>  }</b></p><p>  void count_message() /*統(tǒng)計(jì)模塊*/</p><p><b>  {</b></p><p&

119、gt;<b>  int i,j;</b></p><p>  struct stu_type z;</p><p>  for(i=0;i<N-1;i++)</p><p><b>  {</b></p><p>  for(j=i+1;j<N;j++)</p><

120、p>  { if(stu[i].score<stu[j].score)</p><p>  { z=stu[i];</p><p>  stu[i]=stu[j];</p><p><b>  stu[j]=z;</b></p><p><b>  }</b></p>

121、<p><b>  }</b></p><p><b>  }</b></p><p>  printf("\n\n 學(xué)生總成績(jī)按從大到小排列");</p><p>  printf("\n\n 學(xué)號(hào) 姓名 數(shù)學(xué) 英語 計(jì)算機(jī) 總成績(jī) &q

122、uot;);</p><p>  printf("\n\n------------------------------------------------------------------");</p><p>  for(i=0;i<N-1;i++)</p><p><b>  {</b></p>&

123、lt;p>  printf("\n\n %d %s %d %d %d %d ",stu[i].number,stu[i].name,stu[i].math,stu[i].english,stu[i].computer,stu[i].score);</p><p>  printf("\n\n");</p>&

124、lt;p>  printf("---------------------------------------------------------------------");</p><p><b>  }</b></p><p>  printf("\n\n 按任意鍵返回主菜單!");</p

125、><p><b>  getch();</b></p><p>  system("cls");</p><p><b>  }</b></p><p>  void manger_message() /*管理模塊*/ </p>&l

126、t;p><b>  {</b></p><p>  int i=0,choice;</p><p>  i=read_message();</p><p><b>  do</b></p><p><b>  {</b></p><p>  pri

127、ntf("\n\n ****** 學(xué)生成績(jī)信息系統(tǒng) ******\n\n");</p><p>  printf(" 1.錄入學(xué)生信息\n\n");</p><p>  printf(" 2.瀏覽學(xué)生

128、信息\n\n");</p><p>  printf(" 3.增加學(xué)生信息\n\n");</p><p>  printf(" 4.刪除學(xué)生信息\n\n");</p><p>  printf("

129、 5.排序?qū)W生信息\n\n");</p><p>  printf(" 6.修改學(xué)生信息\n\n");</p><p>  printf(" 7.查詢學(xué)生信息\n\n");</p>

130、<p>  printf(" 8.保存學(xué)生信息\n\n");</p><p>  printf(" 9.統(tǒng)計(jì)學(xué)生信息\n\n");</p><p>  printf(" 0.

131、退出系統(tǒng).\n\n");</p><p>  printf(" 請(qǐng)選擇(0-9)");</p><p>  scanf("%d",&choice);</p><p>  switch(choice)</p><p><b>

132、  {</b></p><p>  case 1: i=input_message(); break;</p><p>  case 2: output_message(i); break;</p><p>  case 3: i=insert_message(i); break;</p><p>  case 4: del_me

133、ssage(); break;</p><p>  case 5: sort_message(); break;</p><p>  case 6: revise_message(); break;</p><p>  case 7: inqure_message();break;</p><p>  case 8: save_message

134、(sum);break;</p><p>  case 9:count_message();break;</p><p>  case 0: break;</p><p><b>  }</b></p><p>  }while(choice!=0);</p><p><b>  }&l

135、t;/b></p><p>  main() /*主函數(shù)*/</p><p>  { int choice;</p><p>  system("cls");</p><p>  system("cls");</p>

136、<p><b>  do</b></p><p>  { printf("\n ******** 功能選擇 *******\n\n\n");</p><p>  printf("\n 1.輸入密碼欄\n\n");</p

137、><p>  printf("\n 2.學(xué)生信息欄\n\n");</p><p>  printf("\n 0.退出\n\n");</p><p>  printf("\n

138、 請(qǐng)選擇(0-2).\n\n");</p><p>  scanf("%d",&choice);</p><p>  switch(choice)</p><p>  { case 1:mangercode_message(); break;</p><p>  case 2:inqur

139、e_message(); break;</p><p>  case 0:break;</p><p><b>  }</b></p><p>  }while(choice!=0);</p><p>  save_message(sum);</p><p>  printf("\n 信

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論