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

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、<p><b>  C語言程序設計報告</b></p><p>  題 目 學生成績管理系統(tǒng)設計 </p><p>  院 系 計算機工程學院 </p><p>  專 業(yè) 數(shù)字媒體技術 </p><p>  目

2、 錄</p><p>  一、內(nèi)容摘要與課程設計目的......................................</p><p>  二、設計題目分析..........................................................</p><p>  2.1題目意義.......................

3、.......................................</p><p>  2.2設計思想..............................................................</p><p>  三、課程設計要求..........................................................

4、.</p><p>  四、程序清單和執(zhí)行結(jié)果...............................................</p><p>  4.1菜單函數(shù)..............................................................</p><p>  4.2輸入函數(shù)................

5、..............................................</p><p>  4.3輸出函數(shù)..............................................................</p><p>  4.4排序函數(shù)....................................................

6、..........</p><p>  4.5查詢函數(shù)..............................................................</p><p>  4.6插入函數(shù)..............................................................</p><p>  4.7

7、刪除函數(shù)……………………………………… </p><p>  五、總結(jié)與體會...............................................................</p><p>  六、參考文獻...................................................................</p>

8、<p>  內(nèi)容摘要與課程設計的目的</p><p>  1.1內(nèi)容摘要:本次課程設計的課題是學生成績管理系統(tǒng),本文介紹課程設計課題的選題意義,說明了本系統(tǒng)提供的主要功能,對設計目的、設計意義、設計思路與各個函數(shù)進行了詳細的說明。本文提供了主要的源程序代碼,并展示了每個函數(shù)的功能與運行效果的圖片,清晰的讓讀者知道哪塊程序段是做什么用途的。最后寫了我關于對于此次的課程設計的想法與感受外加所獲。</

9、p><p>  1.2課程設計的目的:通過課程設計的課程設計題目與答辯來確認我們第一個學期的c語言學習情況是如何的,同樣通過對一個課件包括多個功能的實現(xiàn)更加奠定c語言的基礎,能夠更好地學習接下來的課程。</p><p><b>  設計題目分析</b></p><p><b>  2.1題目的意義</b></p>

10、<p>  一個學校需要管理學生的基本信息和各門功課的考試成績,希望當用到時直接從計算機中輸出,從而減輕管理人員的負擔,也使學生的成績和信息能夠長期保存。通過建立一個簡單的學生成績管理系統(tǒng)來管理學生的成績和信息。</p><p><b>  2.2設計思想</b></p><p>  函數(shù)的調(diào)用:通過函數(shù)調(diào)用實現(xiàn)各個模塊的功能</p><

11、;p>  創(chuàng)建結(jié)構體類型:通過創(chuàng)建結(jié)構體類型,將不同類型的數(shù)據(jù)組合成一個有機的整體,以便使用。</p><p><b>  課程設計要求</b></p><p>  學生成績信息包括:學號、班級、姓名、四門課程成績(語文、數(shù)學、英語、計算機)</p><p><b>  系統(tǒng)需要有一下功能</b></p>

12、<p>  能對學生的成績進行插入、修改、刪除;</p><p>  能對學生的成績進行求總分以及平均分;</p><p>  能查詢學生的成績,各科目成績及學生的名單</p><p>  能對每位學生的成績按總分進行從高到低排序(降序)。</p><p><b>  四、總結(jié)與體會</b></p&g

13、t;<p>  剛開始的時候著手寫學生成績管理系統(tǒng)的源代碼時什么都不會,完全不知道從何下手,后來從網(wǎng)上看看別人的課件資料再加上問大二的學長總算有了點思路,但是具體寫還是困難的,比如最后的課件設計的源代碼中的插入和刪除的使用需要用的密碼 這一些源代碼都是在網(wǎng)上拼拼湊湊找的再加上最后自己改改弄弄 終于運行出來了。尤其是在多次運行不行以后,可以運行后心情的愉悅是無法表達的,而且在課件設計期間 其他的收獲也是不小的,使我對c語言有

14、些</p><p>  已經(jīng)忘卻的知識點都重新又牢記在腦海中,感覺自己能理解</p><p>  程序的思想了,對結(jié)構體有了大概的認識以及使用。</p><p>  關于此次的學生成績管理系統(tǒng)的c語言的源代碼涉及雖然這個程序不是完全是自己編的,有些是問別人的和在看書及查資料的,但全部都是經(jīng)過自己的反復斟酌的 對于不是自己寫的源代碼段我也會反復看代碼然后弄懂代碼的含義

15、和對c程序源代碼的思想。有時候查c語言的相關資料,是從來沒有見到過的所以覺得自己學到了很多其他以前并不知道和所涉及的東西,還有在調(diào)試和運行期間 發(fā)現(xiàn)的許多錯誤,有很多的都是細小的 不容易發(fā)現(xiàn)的,這些就需要我更加認真對待這份課件設計,在不斷調(diào)試和修改的過程中 有反復修改依舊有錯誤的時候 那時候我請教比我大一屆的學長 他幫助我找到了錯誤,也知道了自己在哪方面有些明顯的知識點的欠缺。課件設計的意義是極大的,現(xiàn)在自己對程序整體的把握,利用書上的

16、一些程序段 知識點 能使程序變得更加的簡單化、清楚化,都是我在課程設計中所學到的。總之,不看書不行,光看書也不行,必須自己去思考去實踐才知道如何使用書上的東西,才能把東西活學活用,更好的運用c語言的知識!</p><p>  五、程序清單和執(zhí)行結(jié)果</p><p><b>  5.1菜單函數(shù)</b></p><p>  void main()

17、 //菜單函數(shù)</p><p><b>  {</b></p><p>  char choice;</p><p><b>  while (1)</b></p><p>  {printf("\n\n");</p><p>  prin

18、tf(" 學生成績管理系統(tǒng)\n");</p><p>  printf("******************************************\n");</p><p>  printf(" 1.輸入學生成績.\n");</p><p>  print

19、f(" 2.輸出所有學生成績.\n");</p><p>  printf(" 3.對學生成績排序.\n");</p><p>  printf(" 4.查找學生信息.\n");</p><p>  printf(" 5.插入

20、某一學生成績(需要密碼).\n");</p><p>  printf(" 6.刪除某一學生成績(需要密碼).\n");</p><p>  printf(" 7.錄入結(jié)果存放到文件.\n");</p><p>  printf(" 8.退出管理系統(tǒng).\

21、n");</p><p>  printf("******************************************\n");</p><p>  printf(" 請輸入代碼選擇(1~8):");</p><p><b>  5.2輸入函數(shù)</b></p&

22、gt;<p>  void input() //輸入函數(shù)</p><p><b>  {</b></p><p><b>  int i=0;</b></p><p>  char ask; </p><p><b>  while(1)</b></p

23、><p>  {printf("\n\n");</p><p>  printf("請輸入學生信息\n");</p><p>  printf("學號:");</p><p>  scanf("%d",&stu[i].num);</p><

24、;p>  printf("姓名:");</p><p>  scanf("%s",stu[i].name);</p><p>  printf("班級:");</p><p>  scanf("%d",&stu[i].bj);</p><p>  p

25、rintf("語文:");</p><p>  scanf("%d",&stu[i].chinese);</p><p>  printf("高數(shù):");</p><p>  scanf("%d",&stu[i].math);</p><p>  

26、printf("英語:");</p><p>  scanf("%d",&stu[i].english);</p><p>  printf("計算機:");</p><p>  scanf("%d",&stu[i].com);</p><p> 

27、 stu[i].sum=stu[i].chinese+stu[i].math+stu[i].english+stu[i].com;</p><p>  stu[i].ave=stu[i].sum/4;</p><p><b>  i++;</b></p><p>  getchar();</p><p>  printf

28、("繼續(xù)輸入信息嗎?(Y/N)");</p><p>  ask=getchar();</p><p>  if(ask!='y'&&ask!='Y')</p><p><b>  {</b></p><p>  getchar();</p>

29、;<p><b>  break;</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  5.3輸出函數(shù)</b>&l

30、t;/p><p>  void output() //輸出函數(shù)</p><p><b>  {</b></p><p><b>  int i;</b></p><p>  printf("\n\n");</p><p>  printf("學號

31、 姓名 班級 語文 高數(shù) 英語 計算機 總分 均分\n");</p><p>  for(i=0;i<M;i++)</p><p><b>  {</b></p><p>  if(stu[i].num )</p><p>  printf("%4d%9s%8d%8d%8d%8d%8

32、d%8d%8d\n",stu[i].num,stu[i].name,stu[i].bj,stu[i].chinese,stu[i].math,stu[i].english,stu[i].com,stu[i].sum,stu[i].ave);</p><p><b>  }</b></p><p><b>  }</b></p>

33、;<p><b>  5.4排序函數(shù)</b></p><p>  void sort() //排序函數(shù)</p><p><b>  {</b></p><p>  char choic;</p><p><b>  while (1)</b></p&g

34、t;<p><b>  {</b></p><p>  printf("\n\n");</p><p>  printf(" 對學生成績排序 \n");</p><p>  printf("********************

35、**********************\n");</p><p>  printf(" 1.按學號排序(升序)。 \n");</p><p>  printf(" 5.按總分排序(降序)。 \n");</p><p>  print

36、f(" 6.退出查找。 \n");</p><p>  printf("******************************************\n");</p><p>  printf(" 請輸入代碼選擇(1~6):");</p&g

37、t;<p>  choic=getchar();</p><p>  getchar();</p><p>  switch(choic)</p><p><b>  {</b></p><p>  case'1':sort_1();output();break;</p>&l

38、t;p>  case'5':sort_2();output();break;</p><p>  case'6':return;</p><p>  default:continue;</p><p><b>  }</b></p><p><b>  }</b>

39、;</p><p><b>  }</b></p><p>  void sort_1() //將學號以升序排序</p><p><b>  {</b></p><p><b>  int i,j;</b></p><p>  struct stud

40、ent temp;</p><p>  for(j=0;j<M-1;j++)</p><p>  for(i=0;i<M-1-j;i++)</p><p>  if(stu[i].num>stu[i+1].num)</p><p><b>  {</b></p><p>  te

41、mp=stu[i];</p><p>  stu[i]=stu[i+1];</p><p>  stu[i+1]=temp;</p><p><b>  }</b></p><p><b>  }</b></p><p>  void sort_2() //按總分成績降

42、序排</p><p><b>  {</b></p><p><b>  int i,j;</b></p><p>  struct student temp;</p><p>  for(j=0;j<M-1;j++)</p><p>  for(i=0;i<M-

43、1-j;i++)</p><p>  if(stu[i].sum<stu[i+1].sum)</p><p><b>  {</b></p><p>  temp=stu[i];</p><p>  stu[i]=stu[i+1];</p><p>  stu[i+1]=temp;</

44、p><p><b>  }</b></p><p><b>  }</b></p><p><b>  5.5查詢函數(shù)</b></p><p>  void search() //查找函數(shù)</p><p><b>  {</b>&l

45、t;/p><p><b>  int i;</b></p><p>  char m[10];</p><p>  printf("\n\n");</p><p>  printf("請輸入要查找同學的姓名:");</p><p>  scanf("%

46、s",m);</p><p>  for(i=0;i<M;i++)</p><p>  if(strcmp(m,stu[i].name)==0)</p><p><b>  {</b></p><p>  printf("學號 姓名 班級 語文 高數(shù) 英語 計算機 總分 均分\n");

47、</p><p>  printf("%4d%9s%8d%8d%8d%8d%8d%8d%8d\n",stu[i].num,stu[i].name,stu[i].bj,stu[i].chinese,stu[i].math,stu[i].english,stu[i].com,stu[i].sum,stu[i].ave);</p><p><b>  return;

48、</b></p><p><b>  }</b></p><p>  printf(" 沒有找到該學生信息!");</p><p><b>  return;</b></p><p><b>  }</b></p>

49、<p><b>  5.6插入函數(shù)</b></p><p>  void insert() //插入記錄函數(shù)</p><p><b>  {</b></p><p>  struct student temp;</p><p><b>  int i,j;</b&g

50、t;</p><p>  printf("\n\n");</p><p>  printf(" 此項為管理員權限.請慎用!\n");</p><p>  printf(" 若使用,請輸入密碼!\n");</p><p>  printf(&qu

51、ot; 密碼: ");</p><p>  password();</p><p><b>  if(m)</b></p><p><b>  {</b></p><p>  printf(" 密碼正確!");</p><

52、p>  printf("請輸入學生信息\n"); //輸入要插入的數(shù)據(jù)</p><p>  printf("學號:");</p><p>  scanf("%d",&temp.num);</p><p>  printf("姓名:");</p><p

53、>  scanf("%s",temp.name);</p><p>  printf("班級:");</p><p>  scanf("%d",&temp.bj);</p><p>  printf("語文:");</p><p>  scanf(&

54、quot;%d",&temp.chinese);</p><p>  printf("高數(shù):");</p><p>  scanf("%d",&temp.math);</p><p>  printf("英語:");</p><p>  scanf(&quo

55、t;%d",&temp.english);</p><p>  printf("計算機:");</p><p>  scanf("%d",&temp.com);</p><p>  temp.sum=temp.chinese+temp.math+temp.english+temp.com; //求出

56、總分</p><p>  temp.ave=temp.sum/4;</p><p>  getchar();</p><p><b>  sort_2();</b></p><p>  for(i=0;i<M;i++)</p><p><b>  {</b></p

57、><p>  if(temp.sum>stu[i].sum) //找出要插入的點 i</p><p><b>  {</b></p><p>  for(j=M-2;j>=i;j--) //將原來的數(shù)據(jù)向后移動</p><p>  stu[j+1]=stu[j]; //將插入的值 賦值給結(jié)構體中&

58、lt;/p><p>  stu[i]=temp;</p><p>  printf("插入學生記錄之后為(總分降序):");</p><p><b>  output();</b></p><p>  return; //結(jié)束查找,避免循環(huán)</p><p><b> 

59、 }</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  else</b></p><p><b>  {</b></p><p>  printf(&qu

60、ot; 密碼錯誤!\n");</p><p>  printf(" 返回上一級菜單!");</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  5.7刪除函數(shù)<

61、;/b></p><p>  void del () //刪除函數(shù)</p><p><b>  {</b></p><p>  int num,i,j;</p><p>  printf("\n\n");</p><p>  printf("

62、 此項為管理員權限.請慎用!\n");</p><p>  printf(" 若使用,請輸入密碼!\n");</p><p>  printf(" 密碼: ");</p><p>  password();</p><p><b> 

63、 if(m)</b></p><p><b>  {</b></p><p>  printf(" 密碼正確!");</p><p>  printf("\n請輸入要刪除記錄學生的學號");</p><p>  scanf("%d",&

64、;num);</p><p><b>  sort_1();</b></p><p>  for(i=0;i<M;i++)</p><p><b>  {</b></p><p>  if(num==stu[i].num)</p><p><b>  {<

65、;/b></p><p>  for(j=i;j<M;j++)</p><p>  stu[j]=stu[j+1];</p><p>  printf("刪除一條記錄后數(shù)據(jù)為:");</p><p><b>  sort_1();</b></p><p><b

66、>  output();</b></p><p><b>  return;</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p

67、><b>  else</b></p><p><b>  {</b></p><p>  printf(" 密碼錯誤!\n");</p><p>  printf(" 返回上一級菜單!");</p><p>&l

溫馨提示

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

評論

0/150

提交評論