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

下載本文檔

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

文檔簡介

1、<p>  學(xué)生成績管理系統(tǒng)(順序表)—查找、插入</p><p><b>  摘 要</b></p><p>  C是一種通用的程序設(shè)計(jì)語言,C語言在很多方面繼承和發(fā)展了以往許多高級(jí)程序設(shè)計(jì)語言的成功經(jīng)驗(yàn)和特色,具有書寫格式自由、數(shù)據(jù)類型豐富、語句功能強(qiáng)大、執(zhí)行速度快和存儲(chǔ)控制能力強(qiáng)等優(yōu)點(diǎn)。</p><p>  學(xué)生信息管理系統(tǒng)設(shè)

2、計(jì)是關(guān)于對(duì)學(xué)生各種信息管理來設(shè)計(jì)的一個(gè)系統(tǒng)。整個(gè)系統(tǒng)從符合操作簡便、界面友好、靈活、實(shí)用、安全的要求出發(fā),完成學(xué)生信息管理的全過程,包括創(chuàng)建學(xué)生信息、查找學(xué)生信息、修改學(xué)生信息、插入學(xué)生信息、刪除學(xué)生信息、按平均分或者總分排序、統(tǒng)計(jì)學(xué)生信息等工作。</p><p>  本課程主要介紹了本課題的開發(fā)背景,所要完成的功能和開發(fā)的過程。重點(diǎn)說明了系統(tǒng)的設(shè)計(jì)思路、總體設(shè)計(jì)、各個(gè)功能模塊的設(shè)計(jì)與實(shí)現(xiàn)方法。</p>

3、;<p>  關(guān)鍵詞:學(xué)生管理系統(tǒng),C語言,數(shù)據(jù)結(jié)構(gòu),Wintc</p><p><b>  目錄</b></p><p>  1課題背景介紹1</p><p>  1.1 課題背景1</p><p><b>  1.2 目的1</b></p><p>

4、<b>  2需求分析2</b></p><p>  2.1 數(shù)據(jù)需求分析2</p><p>  2.2 功能需求分析2</p><p>  3系統(tǒng)總體設(shè)計(jì)3</p><p>  3.1 系統(tǒng)模塊劃分3</p><p>  3.2 系統(tǒng)模塊結(jié)構(gòu)圖3</p><p

5、>  4系統(tǒng)詳細(xì)設(shè)計(jì)4</p><p>  4.1創(chuàng)建并輸出學(xué)生信息庫的信息4</p><p>  4.2查找學(xué)生信息5</p><p>  4.3插入學(xué)生信息7</p><p><b>  5系統(tǒng)測(cè)試8</b></p><p><b>  總 結(jié)9</b&

6、gt;</p><p><b>  參考文獻(xiàn)10</b></p><p><b>  課題背景介紹</b></p><p><b>  1.1 課題背景</b></p><p>  隨著網(wǎng)絡(luò)技術(shù)的迅速發(fā)展,各種行業(yè)紛紛應(yīng)用網(wǎng)絡(luò)技術(shù)操作和管理。當(dāng)然學(xué)校是一個(gè)很大的管理系統(tǒng),隨著

7、學(xué)生的大量增加,其管理難度也越來越大,如何對(duì)學(xué)生的個(gè)人信息進(jìn)行更好的管理,這就是我們研究這個(gè)課題的目的。</p><p>  在計(jì)算機(jī)迅速發(fā)展的今天,將計(jì)算機(jī)這一信息處理器應(yīng)用于學(xué)生的個(gè)人信息管理已是勢(shì)必所然,而且這也將學(xué)生信息管理帶來前所未有的改變。采用計(jì)算機(jī)對(duì)學(xué)生的信息管理是信息科學(xué)化和現(xiàn)代化的重要標(biāo)志,它也給各大高校帶來了明顯的社會(huì)效益。主要體現(xiàn)在:極大地提高了管理工作人員的工作效率,大大地減少了以往的資料

8、室所存在的各種弊端,同時(shí)也加強(qiáng)和規(guī)范學(xué)習(xí)對(duì)于學(xué)生信息的管理。</p><p>  為了能夠更好的來實(shí)現(xiàn)對(duì)學(xué)生信息的管理,通過對(duì)學(xué)生信息管理日常工作的詳細(xì)調(diào)查,搜集了大量的資料,從系統(tǒng)結(jié)構(gòu)的組織,功能的實(shí)現(xiàn),技術(shù)的要求以及可行性等多方面進(jìn)行考慮,認(rèn)為本課題是一個(gè)適應(yīng)現(xiàn)今學(xué)校學(xué)生個(gè)人信息管理需求的計(jì)算機(jī)信息管理系統(tǒng),具有一定的實(shí)際開發(fā)價(jià)值和使用價(jià)值。</p><p><b>  1.

9、2 目的</b></p><p>  本課題運(yùn)用C語言進(jìn)行開發(fā),C語言能夠簡單的進(jìn)行編譯一些程序,來實(shí)現(xiàn)對(duì)一些問題的解決。它雖然比較簡單的處理一些問題,但卻有更高的效率。它能夠被大多數(shù)用戶所接受,因?yàn)樗軌虺尸F(xiàn)出清晰的界面,是人們能夠很好的理解。能在一些方面給人們更好的服務(wù),成為人們的好幫手。</p><p>  經(jīng)過這一個(gè)學(xué)期對(duì)《數(shù)據(jù)結(jié)構(gòu)》的學(xué)習(xí),我們都學(xué)到了不少東西,可能有

10、些學(xué)的還不夠理想,但無論如何這些知識(shí)都為我們的下一步學(xué)習(xí)打下了堅(jiān)實(shí)的基礎(chǔ)。做這么一個(gè)課程設(shè)計(jì),一方面是為了檢查我們一個(gè)學(xué)期以來的學(xué)習(xí)成果,另一方面也是為了讓我們進(jìn)一步的掌握和運(yùn)用它,同時(shí)也讓我們認(rèn)清自己的不足之處和薄弱環(huán)節(jié),加以彌補(bǔ)和加強(qiáng)。</p><p><b>  需求分析</b></p><p>  隨著學(xué)校規(guī)模的發(fā)展擴(kuò)大,學(xué)校要向著大型化,規(guī)?;l(fā)展,而對(duì)于學(xué)

11、生信息管理系統(tǒng)有關(guān)的信息隨之增加。在這種情況下單靠人工來處理學(xué)生的信息不但顯得大不從心,而且極容易出錯(cuò)。因此,需要開發(fā)學(xué)生管理系統(tǒng),該系統(tǒng)可以實(shí)現(xiàn)由計(jì)算機(jī)代替人工執(zhí)行一系列復(fù)雜而繁瑣的操作,使得學(xué)校管理人員可以輕松快捷的完成學(xué)生信息管理的任務(wù)。</p><p>  2.1 數(shù)據(jù)需求分析</p><p>  本系統(tǒng)的主要數(shù)據(jù)是學(xué)生信息,學(xué)生信息包括:學(xué)生學(xué)號(hào),姓名,性別,語文成績,數(shù)學(xué)成績,

12、英語成績,平均成績,總成績等。</p><p>  2.2 功能需求分析</p><p>  本系統(tǒng)主要實(shí)現(xiàn)對(duì)學(xué)生成績信息進(jìn)行管理,需要實(shí)現(xiàn)以下幾個(gè)方面的管理功能:</p><p> ?。?)創(chuàng)建學(xué)生信息:錄入學(xué)生的信息。</p><p> ?。?)查找學(xué)生信息:按學(xué)號(hào)、姓名查找。</p><p> ?。?)刪除學(xué)生信

13、息;按學(xué)號(hào)、姓名刪除。</p><p> ?。?)更新學(xué)生信息:找到要修改的學(xué)號(hào),修改相應(yīng)信息。</p><p> ?。?)排序?qū)W生信息:按某科目或者總分排序。</p><p> ?。?)統(tǒng)計(jì)學(xué)生信息:統(tǒng)計(jì)及格和優(yōu)秀人數(shù)。</p><p> ?。?)插入學(xué)生信息:插入一個(gè)新的學(xué)生。</p><p><b> 

14、 系統(tǒng)總體設(shè)計(jì)</b></p><p>  3.1 系統(tǒng)模塊劃分</p><p>  本系統(tǒng)主要是對(duì)學(xué)生信息的管理,包括了有關(guān)學(xué)生信息的創(chuàng)建、查詢、刪除、更新、排序、統(tǒng)計(jì)、插入等功能。整個(gè)系統(tǒng)分為以下幾個(gè)模塊。</p><p>  1、歡迎界面模塊 本模塊提供歡迎界面的信息輸出模式。</p><p><b>  2、創(chuàng)

15、建模塊</b></p><p>  本模塊用于創(chuàng)建學(xué)生的信息,包括學(xué)生的學(xué)號(hào)、姓名、性別、語文成績、數(shù)學(xué)成績、英語成績、平均成績、總成績。</p><p>  3、查詢模塊 本模塊用于查詢學(xué)生的信息,按學(xué)號(hào)或姓名查詢等。</p><p>  4、刪除模塊 本模塊用于刪除學(xué)生的信息,按學(xué)號(hào)或姓名刪除等。</p><p>  5、

16、更新本模塊 用于根據(jù)輸入要查詢的學(xué)號(hào)來修改其相應(yīng)的信息。</p><p>  6、排序模塊 本模塊將學(xué)生成績按平均分或者總分排序。</p><p>  7、統(tǒng)計(jì)模塊 本模塊用于統(tǒng)計(jì)各科目及格和優(yōu)秀的人數(shù)。</p><p>  3.2 系統(tǒng)模塊結(jié)構(gòu)圖</p><p>  根據(jù)系統(tǒng)功能設(shè)計(jì),對(duì)應(yīng)的系統(tǒng)模塊結(jié)構(gòu)圖如圖1所示:</p>

17、<p>  圖1 系統(tǒng)模塊結(jié)構(gòu)圖</p><p><b>  系統(tǒng)詳細(xì)設(shè)計(jì)</b></p><p>  通過對(duì)該系統(tǒng)設(shè)計(jì)的了解與討論,同時(shí)也為了廣大使用者的方便與快捷。我們最后設(shè)計(jì)了這樣的一個(gè)界面。首先要讓使用者明白怎樣使用此系統(tǒng)。這就需要通過界面來給他們一個(gè)清晰而明白的空間。而我們?cè)O(shè)計(jì)的這個(gè)界面恰好符合了這一要求。通過調(diào)用界面函數(shù)來使使用者能夠很方便的

18、進(jìn)行查詢、插入等操作。</p><p>  4.1創(chuàng)建并輸出學(xué)生信息庫的信息</p><p>  學(xué)生信息管理系統(tǒng)的主界面提供進(jìn)入系統(tǒng)其他功能模塊的方法,使用戶能方便地調(diào)用查詢、插入。</p><p>  typedef struct stu</p><p>  { int xuehao;</p><p>  cha

19、r name[N];</p><p>  char sex[N];</p><p>  int eng,math,ds;</p><p>  char jianjie[NU];</p><p><b>  }stu;</b></p><p>  typedef struct student<

20、;/p><p>  {stu data[M];</p><p><b>  int len;</b></p><p><b>  }student;</b></p><p><b>  創(chuàng)建信息庫:</b></p><p>  student created

21、atabase( )</p><p>  { student L;</p><p><b>  int i;</b></p><p>  printf("請(qǐng)輸入要?jiǎng)?chuàng)建的學(xué)生總數(shù)\n");</p><p>  scanf("%d",&L.len);</p>

22、<p>  for(i=1;i<=L.len;i++)</p><p>  { printf("第 %d 個(gè)學(xué)生的基本信息\n",i);</p><p>  printf("請(qǐng)輸入學(xué)號(hào)\n");</p><p>  scanf("%d",&L.data[i-1].xuehao);&l

23、t;/p><p>  printf("請(qǐng)輸入姓名\n");</p><p>  scanf("%s",L.data[i-1].name);</p><p>  printf("請(qǐng)輸入性別\n");</p><p>  scanf("%s",L.data[i-1].se

24、x);</p><p>  printf("請(qǐng)輸入英語成績\n");</p><p>  scanf("%d",&L.data[i-1].eng);</p><p>  printf("請(qǐng)輸入數(shù)學(xué)成績\n");</p><p>  scanf("%d",&

25、amp;L.data[i-1].math);</p><p>  printf("請(qǐng)輸入數(shù)據(jù)結(jié)構(gòu)成績\n");</p><p>  scanf("%d",&L.data[i-1].ds);</p><p>  printf("請(qǐng)輸入注釋\n");</p><p>  scan

26、f("%s",L.data[i-1].jianjie);</p><p><b>  }</b></p><p><b>  return L;</b></p><p><b>  }</b></p><p><b>  學(xué)生信息輸</b&g

27、t;</p><p>  void out(student L)</p><p><b>  {int i;</b></p><p>  printf(" 學(xué)號(hào) 姓名 性別 英語 數(shù)學(xué) 數(shù)據(jù)結(jié)構(gòu) 注釋 \n");</p><p>  for(i=1;i<=L.len

28、;i++)</p><p>  {printf(" %d\t ",L.data[i-1].xuehao);</p><p>  printf("%s\t ",L.data[i-1].name);</p><p>  printf("%s\t",L.data[i-1].sex);</p><

29、;p>  printf("%d\t",L.data[i-1].eng);</p><p>  printf("%d\t",L.data[i-1].math);</p><p>  printf("%d\t ",L.data[i-1].ds);</p><p>  printf("%s \n&

30、quot;,L.data[i-1].jianjie);</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  4.2查找學(xué)生信息</b></p><p>  按姓名查找或按學(xué)號(hào)查找,在初始化線性表后,在界面上進(jìn)入查詢模塊,選

31、擇你要進(jìn)行的操作:</p><p><b>  按照姓名查找學(xué)生</b></p><p>  void search_name(student L)</p><p><b>  {</b></p><p><b>  int j=1;</b></p><p

32、>  char n[N];</p><p>  printf("輸入要查詢的姓名:\n");</p><p>  scanf("%s",n);</p><p>  while(strcmp(L.data[j-1].name,n)&&j<=L.len)</p><p><

33、b>  j++;</b></p><p>  if(strcmp(L.data[j-1].name,n)==0)</p><p><b>  {</b></p><p>  printf("%d ",L.data[j-1].xuehao);</p><p>  print

34、f("%s ",L.data[j-1].name);</p><p>  printf("%s ",L.data[j-1].sex);</p><p>  printf("%d ",L.data[j-1].eng);</p><p>  printf("%d

35、 ",L.data[j-1].math);</p><p>  printf("%d ",L.data[j-1].ds);</p><p>  printf("%s \n",L.data[j-1].jianjie);</p><p><b>  }</b></p&

36、gt;<p><b>  else</b></p><p>  printf("沒有此學(xué)生!");</p><p><b>  }</b></p><p><b>  按照學(xué)號(hào)查找學(xué)生</b></p><p>  void search_no(

37、student L)</p><p><b>  {</b></p><p><b>  int j=1;</b></p><p><b>  int n;</b></p><p>  printf("輸入要查詢的學(xué)號(hào):\n");</p>&l

38、t;p>  scanf("%d",&n);</p><p>  while(L.data[j-1].xuehao!=n&&j<=L.len)</p><p><b>  j++;</b></p><p>  if(L.data[j-1].xuehao==n)</p><

39、p><b>  {</b></p><p>  printf("%d ",L.data[j-1].xuehao);</p><p>  printf("%s ",L.data[j-1].name);</p><p>  printf("%s ",

40、L.data[j-1].sex);</p><p>  printf("%d ",L.data[j-1].eng);</p><p>  printf("%d ",L.data[j-1].math);</p><p>  printf("%d ",L.data[j-1].ds

41、);</p><p>  printf("%s \n",L.data[j-1].jianjie);</p><p><b>  }</b></p><p><b>  else</b></p><p>  printf("沒有此學(xué)生!");<

42、/p><p><b>  }</b></p><p>  void search(student L)</p><p><b>  {</b></p><p><b>  int c;</b></p><p>  printf("\n1:查詢學(xué)號(hào)

43、 ");</p><p>  printf("2:查詢姓名 ");</p><p>  printf("3:退出\n");</p><p>  printf("\n選擇:");</p><p>  scanf("\n%d",&c);&l

44、t;/p><p><b>  switch(c)</b></p><p><b>  {</b></p><p>  case 1:search_no(L);break;</p><p>  case 2:search_name(L);break;</p><p>  case

45、3:break;</p><p>  default:printf("輸入有錯(cuò)!\n");</p><p><b>  }}</b></p><p><b>  4.3插入學(xué)生信息</b></p><p>  根據(jù)分析,應(yīng)該先查找要插入的學(xué)生的學(xué)號(hào)是否已經(jīng)存在,存在的情況下,要賦

46、予一個(gè)新的學(xué)號(hào),直到不出現(xiàn)重復(fù)為止,然后將要插入的學(xué)生信息插入到順序表的最后,這種插入操作比較簡單。</p><p>  插入一個(gè)新學(xué)生的信息</p><p>  student insert(student L)</p><p>  { int n,x;</p><p>  printf("請(qǐng)輸入該學(xué)生的學(xué)號(hào):\n");

47、</p><p>  scanf("%d",&n);</p><p>  x=isnu(L,n);</p><p><b>  if(x>0)</b></p><p>  { L.data[x].xuehao=n;</p><p>  printf("請(qǐng)

48、輸入學(xué)生的基本信息\n");</p><p>  printf("請(qǐng)輸入姓名\n");</p><p>  scanf("%s",L.data[x].name);</p><p>  printf("請(qǐng)輸入性別\n");</p><p>  scanf("%s&q

49、uot;,L.data[x].sex);</p><p>  printf("請(qǐng)輸入英語成績\n");</p><p>  scanf("%d",&L.data[x].eng);</p><p>  printf("請(qǐng)輸入數(shù)學(xué)成績\n");</p><p>  scanf(&

50、quot;%d",&L.data[x].math);</p><p>  printf("請(qǐng)輸入數(shù)據(jù)結(jié)構(gòu)成績\n");</p><p>  scanf("%d",&L.data[x].ds);</p><p>  printf("請(qǐng)輸入注釋\n");</p><

51、p>  scanf("%s",L.data[x].jianjie);</p><p><b>  L.len++;}</b></p><p><b>  else</b></p><p>  printf("請(qǐng)重新輸入該學(xué)生的學(xué)號(hào):\n");</p><p&

52、gt;<b>  return L;</b></p><p><b>  }</b></p><p><b>  系統(tǒng)測(cè)試</b></p><p><b>  下面是測(cè)試結(jié)果:</b></p><p>  創(chuàng)建信息庫bing shuc </p>

53、<p><b>  2.</b></p><p><b>  \</b></p><p><b>  總 結(jié)</b></p><p>  本設(shè)計(jì)實(shí)現(xiàn)的功能:成績信息錄入、成績信息的管理等。并達(dá)到操作過程中的直觀、方便、實(shí)用、安全等要求。系統(tǒng)采用模塊化程序設(shè)計(jì)的方法,既便于系統(tǒng)功能的組合

54、和修改,又便于未參與系統(tǒng)開發(fā)的技術(shù)維護(hù)人員補(bǔ)充和維護(hù)。</p><p>  本系統(tǒng)經(jīng)過測(cè)試,證明其運(yùn)行是穩(wěn)定、可靠的。但在系統(tǒng)設(shè)計(jì)中也也遇到很多的問題,并且本系統(tǒng)的功能還需要不斷的完善和改進(jìn),在以后空閑時(shí)間里逐一進(jìn)行完善,使系統(tǒng)功能更加完善,使本軟件能夠更好的為大中型企業(yè)服務(wù),創(chuàng)造更大的社會(huì)價(jià)值。</p><p><b>  參考文獻(xiàn)</b></p>&

55、lt;p>  [1] 譚浩強(qiáng).C程序設(shè)計(jì)[M].北京:清華大學(xué)出版社. 2005.</p><p>  [2] 嚴(yán)蔚敏. 數(shù)據(jù)結(jié)構(gòu)(C語言版) [M]. 北京:清華大學(xué)出版社. 2008.</p><p>  [3] 陳雁.數(shù)據(jù)結(jié)構(gòu) [M].北京:高等教育出版社,2004. </p><p>  [4] 張磊.C程序設(shè)計(jì)教程.北京:中國鐵道出版社.200

溫馨提示

  • 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)論