c語(yǔ)言課程設(shè)計(jì)報(bào)告--學(xué)生選修課程管理系統(tǒng)_第1頁(yè)
已閱讀1頁(yè),還剩25頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p><b>  目 錄 </b></p><p>  1程序目標(biāo)及功能--------------------------------------------------------------- 1</p><p>  1.1課題背景------------------------------------------------------------

2、-----2</p><p>  1.2系統(tǒng)功能 ---------------------------------------------------------------2</p><p>  1.3設(shè)計(jì)要求 ---------------------------------------------------------------3</p><p>  2

3、程序功能模塊組成及流程圖 -----------------------------------------------3</p><p>  2.1系統(tǒng)功能模塊-----------------------------------------------------------5</p><p>  2.2各模塊流程圖-----------------------------------

4、------------------------6</p><p>  3程序主要數(shù)據(jù)結(jié)構(gòu)及函數(shù)列表 ---------------------------------------------8</p><p>  3.1 程序中使用的數(shù)據(jù)結(jié)構(gòu)----------------------------------------------8</p><p>  3.2

5、函數(shù)列表--------------------------------------------------------------10</p><p>  4程序代碼及運(yùn)行結(jié)果 -------------------------------------------------------12</p><p>  5總結(jié)與體會(huì) ------------------------------

6、------------------------------------15 </p><p><b>  程序目標(biāo)及功能</b></p><p><b>  1.1、課題背景</b></p><p>  當(dāng)今社會(huì)是一個(gè)信息時(shí)代,計(jì)算機(jī)技術(shù)發(fā)展迅速,同時(shí)信息的自動(dòng)處理以及網(wǎng)絡(luò)式的信息交

7、互方式越來(lái)越被人們認(rèn)可和運(yùn)用,讓計(jì)算機(jī)來(lái)管理學(xué)生的信息是現(xiàn)在各個(gè)高校都在積極進(jìn)行的工作之一,也是高校教學(xué)管理工作的重要內(nèi)容之一。網(wǎng)上選課與傳統(tǒng)的選課方式相比更節(jié)約資源,同時(shí),隨著學(xué)生選課自主權(quán)的增加,網(wǎng)上選課有效的避免了許多不良現(xiàn)象,使教學(xué)更加透明。</p><p><b>  1.2、系統(tǒng)功能</b></p><p> ?、僬n程信息錄入。建立課程信息鏈表,由鍵盤(pán)輸入

8、課程信息。</p><p> ?、谡n程信息輸出。輸出所有課程信息。</p><p> ?、鄄樵?xún)課程。按課程編號(hào)、課程名稱(chēng)、學(xué)分、按課程性質(zhì)、開(kāi)課學(xué)期等查詢(xún)(至少實(shí)現(xiàn)1種)。</p><p> ?、軐W(xué)生選修課程。輸入學(xué)生學(xué)號(hào)和課程編號(hào),形成一條選課信息,保存在“選修信息文件”里。</p><p> ?、莶樵?xún)學(xué)生選修的課程。輸入學(xué)生學(xué)號(hào),輸出該生

9、已選修的課程編號(hào)和課程名稱(chēng)。</p><p> ?、薇4嬲n程信息到磁盤(pán)文件。建立一個(gè)磁盤(pán)文件,把所建立的課程表寫(xiě)入文件。</p><p> ?、邚拇疟P(pán)文件中讀出課程信息。</p><p><b>  1.3、設(shè)計(jì)要求</b></p><p>  ①假定有n門(mén)課程,每門(mén)課程有課程編號(hào)、課程名稱(chēng)、課程性質(zhì)(專(zhuān)業(yè)選修課、公選課

10、)、總學(xué)時(shí)、總學(xué)分、理論學(xué)時(shí)、實(shí)驗(yàn)學(xué)時(shí)、開(kāi)課學(xué)期、已選修本課程的學(xué)生人數(shù)等信息;每門(mén)課最多允許60個(gè)學(xué)生選修。</p><p>  選修信息文件,用來(lái)保存每個(gè)學(xué)生選修課程的信息,每條記錄包括:學(xué)生的學(xué)號(hào)、所選修的課程編號(hào)和課程名稱(chēng)。</p><p>  系統(tǒng)以菜單方式工作(程序主界面包括程序名稱(chēng)及編程者學(xué)號(hào)、姓名、班級(jí);同時(shí)要求輸入功能號(hào)碼,選擇進(jìn)入功能模塊程序)。</p>

11、<p>  ④用函數(shù)分別實(shí)現(xiàn)動(dòng)態(tài)鏈表的建立、動(dòng)態(tài)鏈表輸出等功能。</p><p> ?、萁缑嬗押茫绦蛑屑尤氡匾淖⑨?。</p><p>  ⑥函數(shù)功能要?jiǎng)澐趾茫ńY(jié)構(gòu)化程序設(shè)計(jì));函數(shù)要求使用指針作形參。</p><p>  ⑦學(xué)生選修一門(mén)課后,要同時(shí)更新課程信息和選修信息文件。</p><p>  程序功能模塊組成及流程圖<

12、/p><p><b>  2.1系統(tǒng)功能模塊</b></p><p>  根據(jù)設(shè)計(jì)要求分為8個(gè)模塊,分別是:</p><p>  1: 創(chuàng)建課程信息:課程信息的錄入,建立課程信息鏈表,有鍵盤(pán)輸入課程信息。</p><p>  2: 課程信息輸出:輸入所有課程信息。</p><p>  3: 查詢(xún)課程信

13、息:按課程編號(hào)、課程名稱(chēng)、課程性質(zhì)、學(xué)分、開(kāi)課學(xué)期等查詢(xún)(此程序按課程編號(hào)實(shí)現(xiàn))。</p><p>  4: 學(xué)生選修課程:輸入學(xué)生學(xué)號(hào)和課程編號(hào),形成一條選課信息,保存在“選修信息文件”里。</p><p>  5: 查詢(xún)學(xué)生選修課程:輸入學(xué)生學(xué)號(hào),輸入該省已選修的課程編號(hào)和課程名稱(chēng)。</p><p>  6: 保存課程信息到磁盤(pán):建立磁盤(pán)文件,把所建立的課程表寫(xiě)

14、入文件。</p><p>  7: 從磁盤(pán)文件中讀出課程信息:從磁盤(pán)文件中讀出課程信息并輸出,顯示主界面。</p><p>  8: 退出:結(jié)束程序,退出系統(tǒng)。</p><p><b>  2.2各模塊流程圖</b></p><p><b>  選擇模塊</b></p><p&g

15、t;<b>  創(chuàng)建課程信息</b></p><p><b>  do</b></p><p><b>  {</b></p><p>  cp1=(struct stu*)malloc(sizeof(struct stu));</p><p>  if(i==1) chead

16、=cp2=cp1;</p><p>  else cp2->next=cp1;</p><p>  scanf("%d %s",&cp1->num,&cp1->name);</p><p>  scanf("%s %d %d %d",&cp1->quale,&cp1-&g

17、t;time,&cp1->credit,&cp1->thtime);</p><p>  scanf("%d %d %d",&cp1->extime,&cp1->term,&cp1->alnum);</p><p><b>  cp2=cp1;</b></p>&l

18、t;p>  fflush(stdin); //刷新scanf()函數(shù)緩沖,防止自動(dòng)循環(huán)</p><p><b>  i++;</b></p><p>  }while(am>=i);</p><p>  cp2->next=NULL;</p><p><b>  學(xué)生選

19、課</b></p><p><b>  int snum;</b></p><p>  struct stu*head,*p1;</p><p><b>  p1=p;</b></p><p>  printf("請(qǐng)輸入學(xué)生學(xué)號(hào):");</p><

20、p>  scanf("%d",&snum);</p><p>  printf("輸入課程編號(hào):");</p><p>  scanf("%d",&num);</p><p><b>  do</b></p><p><b>  

21、{</b></p><p>  if (p1->num=num)</p><p><b>  {</b></p><p><b>  FILE*fp;</b></p><p>  fp=fopen("選修信息文件.txt","w");<

22、/p><p>  fprintf(fp,"學(xué)生學(xué)號(hào) 課程編號(hào) 名稱(chēng) 性質(zhì) 總學(xué)時(shí) 總學(xué)分 理論學(xué)時(shí) 實(shí)驗(yàn)學(xué)時(shí) 開(kāi)課學(xué)期 已修本課的人數(shù)\n");</p><p>  fprintf(fp,"%d\t%d\t%s\t%s\t%d\t%d\t%d\t%d\t%d\t%d",snum,p1->num,p1->name,p1->quale,p1

23、->time,p1->credit,p1->thtime,p1->extime,p1->term,p1->alnum);</p><p>  fclose(fp);</p><p>  printf("已保存至“選修信息文件.txt”\n");</p><p><b>  }</b><

24、;/p><p><b>  else </b></p><p>  p1=p1->next;</p><p>  }while(p1=NULL);</p><p>  3、程序主要數(shù)據(jù)結(jié)構(gòu)及函數(shù)列表</p><p>  3.1 程序中使用的數(shù)據(jù)結(jié)構(gòu)</p><p><

25、;b>  鏈表的使用</b></p><p>  struct stu //聲明結(jié)構(gòu)體類(lèi)型struct student</p><p><b>  {</b></p><p>  int num; //課程編號(hào)</p><p>  char name[20]; //課程名稱(chēng)&

26、lt;/p><p>  char quale[10]; //課程性質(zhì)</p><p>  int time; //總學(xué)時(shí)</p><p>  int credit; //總學(xué)分</p><p>  int thtime; //理論學(xué)時(shí)</p><p>  int extime; //實(shí)驗(yàn)學(xué)時(shí)<

27、;/p><p>  int term; //開(kāi)課學(xué)期</p><p>  int alnum; //已選本課程的學(xué)生人數(shù)</p><p>  struct stu*next;</p><p><b>  };</b></p><p><b>  3.2 函數(shù)列表</b&g

28、t;</p><p>  struct stu * creat(int am); // 創(chuàng)建鏈表,錄入課程信息 </p><p>  void output(struct stu *p); //聲明輸入課程信息的函數(shù),按課程編號(hào)查詢(xún)</p><p>  void inquire(struct stu*p,int n); //聲明查詢(xún)課程的函數(shù)<

29、;/p><p>  void stu_classes(struct stu*p,int num); //聲明保存文件的的函數(shù)</p><p>  void inquire_stu(struct stu*p,int numb); //查詢(xún)學(xué)生選課信息 </p><p>  void save_inf(struct stu*p); //聲明

30、保存課程信息函數(shù)</p><p>  void read_inf(struct stu*p); //聲明讀出課程信息的函數(shù)</p><p>  void reset(); //聲明清除界面函數(shù)</p><p><b>  程序代碼及運(yùn)行結(jié)果</b></p&g

31、t;<p><b>  程序代碼:</b></p><p>  #include<stdio.h></p><p>  #include<stdlib.h></p><p>  #include<conio.h></p><p>  #define NULL 0</

32、p><p>  #define N 2 //定義共5門(mén)課程</p><p>  struct stu //聲明結(jié)構(gòu)體類(lèi)型struct student</p><p><b>  {</b></p><p>  int num; //課程編號(hào)</p><p>  char na

33、me[20]; //課程名稱(chēng)</p><p>  char quale[10]; //課程性質(zhì)</p><p>  int time; //總學(xué)時(shí)</p><p>  int credit; //總學(xué)分</p><p>  int thtime; //理論學(xué)時(shí)</p><p>  int

34、extime; //實(shí)驗(yàn)學(xué)時(shí)</p><p>  int term; //開(kāi)課學(xué)期</p><p>  int alnum; //已選本課程的學(xué)生人數(shù)</p><p>  struct stu*next;</p><p><b>  };</b></p><p>  int ma

35、in(void)</p><p><b>  {</b></p><p>  struct stu * creat(int am); // 創(chuàng)建鏈表,錄入課程信息 </p><p>  void output(struct stu *p); //聲明輸入課程信息的函數(shù),按課程編號(hào)查詢(xún)</p><p>  vo

36、id inquire(struct stu*p,int n); //聲明查詢(xún)課程的函數(shù)</p><p>  void stu_classes(struct stu*p,int num); //聲明保存文件的的函數(shù)</p><p>  void inquire_stu(struct stu*p,int numb); //查詢(xún)學(xué)生選課信息 </p><p>

37、;  void save_inf(struct stu*p); //聲明保存課程信息函數(shù)</p><p>  void read_inf(struct stu*p); //聲明讀出課程信息的函數(shù)</p><p>  void reset(); //聲明清除界面函數(shù)</p>

38、<p>  struct stu *head;</p><p>  int M,n,num,numb,fail;</p><p>  loop:printf("\n");</p><p>  printf("*******************學(xué)生選修課程系統(tǒng)*******************\n");&l

39、t;/p><p>  printf(" 學(xué)號(hào):******* 姓名:*** 班級(jí):***** \n" );</p><p>  printf("\n");</p><p>  printf("******************************************************\n&q

40、uot;);</p><p>  printf("*\t\t※1: 創(chuàng)建課程信息表 *\n");</p><p>  printf("*\t\t※2: 課程信息輸出 *\n");</p><p>  printf("*\t\t※3: 查詢(xún)課程信息

41、 *\n");</p><p>  printf("*\t\t※4: 學(xué)生選修課程 *\n");</p><p>  printf("*\t\t※5: 查詢(xún)學(xué)生選修課程 *\n");</p><p>  prin

42、tf("*\t\t※6: 保存課程信息到磁盤(pán) *\n");</p><p>  printf("*\t\t※7: 從磁盤(pán)文件中讀出課程信息 *\n");</p><p>  printf("*\t\t※8: 退出 *\n");

43、 //菜單形式的主界面</p><p>  printf("******************************************************\n");</p><p>  printf("\n\n\t\t請(qǐng)輸入功能號(hào) [1-8]:"); //提示輸入功能號(hào)</p><p>  scan

44、f("%d",&M); </p><p><b>  if (M==1)</b></p><p><b>  {</b></p><p>  if (fail==1) //判斷是否創(chuàng)建列表</p>

45、<p>  {printf("已經(jīng)創(chuàng)建列表,請(qǐng)選擇其他功能!!\n");</p><p>  goto loop; //返回初始界面</p><p><b>  }</b></p><p><b>  else </b></p><

46、;p>  head=creat(N); //使用列表,錄入信息</p><p><b>  fail=1;</b></p><p>  //reset(); //清除界面</p><p><b>  }</b></p><p><

47、b>  else </b></p><p><b>  if (M==2)</b></p><p><b>  {</b></p><p>  if(fail==1) //判斷是否創(chuàng)建列表</p><p>  {output(head);reset();}

48、 //輸入信息,清除界面</p><p><b>  else </b></p><p>  printf("沒(méi)有數(shù)據(jù),請(qǐng)先錄入信息??!\n");</p><p>  goto loop; //返回初始界面</p><p><b>  }</

49、b></p><p><b>  else </b></p><p><b>  if (M==3)</b></p><p><b>  {</b></p><p>  if (fail==1) //判斷是否創(chuàng)建列表</p>&l

50、t;p>  {inquire(head,n);reset();} //查詢(xún)信息函數(shù),清除界面</p><p><b>  else </b></p><p>  printf("沒(méi)有數(shù)據(jù),請(qǐng)先錄入信息!!\n");</p><p>  goto loop; //返回初始

51、界面</p><p><b>  }</b></p><p><b>  else </b></p><p><b>  if (M==4)</b></p><p><b>  {</b></p><p>  if(fail==1)

52、</p><p>  {stu_classes(head,num);reset();} //形成信息并保存,清除界面</p><p><b>  else </b></p><p>  printf("沒(méi)有數(shù)據(jù),請(qǐng)先錄入信息??!\n");</p><p>  goto loop;

53、 //返回初始界面</p><p><b>  }</b></p><p><b>  else </b></p><p><b>  if (M==5)</b></p><p><b>  {</b></p><

54、p>  if(fail==1)</p><p><b>  {</b></p><p>  inquire_stu(head,numb); //查詢(xún)信息</p><p><b>  fail=2;</b></p><p>  reset(); //清

55、除界面</p><p><b>  }</b></p><p><b>  else </b></p><p>  printf("沒(méi)有數(shù)據(jù),請(qǐng)先錄入信息?。n");</p><p>  goto loop; //返回初始界面</p>

56、<p><b>  }</b></p><p><b>  else </b></p><p><b>  if (M==6)</b></p><p><b>  {</b></p><p>  if (fail==2)</p>&

57、lt;p><b>  {</b></p><p>  save_inf(head); //保存文件</p><p><b>  fail=3;</b></p><p>  reset(); //清除界面</p><p><b>  }</b>

58、;</p><p><b>  else </b></p><p>  printf("沒(méi)有選課,請(qǐng)先選課??!\n");</p><p>  goto loop; //返回初始界面</p><p><b>  }</b></p>&

59、lt;p><b>  else </b></p><p><b>  if (M==7)</b></p><p><b>  {</b></p><p>  if (fail==1||fail==2||fail==3)</p><p>  {read_inf(head);

60、reset();}</p><p><b>  else </b></p><p>  printf("沒(méi)有數(shù)據(jù),請(qǐng)先錄入信息!!\n");</p><p>  goto loop; //返回初始界面</p><p><b>  }</b>

61、;</p><p><b>  else</b></p><p><b>  if (M==8)</b></p><p>  exit(0); //退出程序</p><p><b>  else </b></p><p>  print

62、f("輸入錯(cuò)誤\n"); //錯(cuò)誤提示</p><p>  goto loop; //轉(zhuǎn)至功能號(hào)的輸入</p><p><b>  return 0;</b></p><p><b>  }</b></p><p>  struct stu * cr

63、eat(int am) //創(chuàng)建鏈表</p><p><b>  {</b></p><p>  int i=1;am=N;</p><p>  struct stu *cp1,*cp2,*chead;</p><p>  printf("\t請(qǐng)輸入以下信息:(名稱(chēng)和性質(zhì)請(qǐng)輸入小寫(xiě)字母,其余均為數(shù)字)\

64、n");</p><p>  printf("課程的編號(hào) 名稱(chēng) 性質(zhì) 總學(xué)時(shí) 總學(xué)分 理論學(xué)時(shí) 實(shí)驗(yàn)學(xué)時(shí) 開(kāi)課學(xué)期 已修本課的人數(shù):");</p><p>  printf("\n");</p><p><b>  do</b></p><p><b>  {&

65、lt;/b></p><p>  cp1=(struct stu*)malloc(sizeof(struct stu));</p><p>  if(i==1) chead=cp2=cp1;</p><p>  else cp2->next=cp1;</p><p>  scanf("%d %s",&c

66、p1->num,&cp1->name);</p><p>  scanf("%s %d %d %d",&cp1->quale,&cp1->time,&cp1->credit,&cp1->thtime);</p><p>  scanf("%d %d %d",&cp1-

67、>extime,&cp1->term,&cp1->alnum);</p><p><b>  cp2=cp1;</b></p><p>  fflush(stdin); //刷新scanf()函數(shù)緩沖,防止自動(dòng)循環(huán)</p><p><b>  i++;</b><

68、;/p><p>  }while(am>=i);</p><p>  cp2->next=NULL;</p><p>  return (chead);</p><p><b>  }</b></p><p>  void output(struct stu *p) //定義輸出信

69、息函數(shù)</p><p><b>  {</b></p><p><b>  int i;</b></p><p>  struct stu *p1;</p><p><b>  p1=p;</b></p><p>  printf("編號(hào) 名稱(chēng)

70、 性質(zhì) 總學(xué)時(shí) 總學(xué)分 理論學(xué)時(shí) 實(shí)驗(yàn)學(xué)時(shí) 開(kāi)課學(xué)期 已修本課的人數(shù)\n");</p><p>  for (i=1;p1!=NULL;i++)</p><p><b>  {</b></p><p>  printf("%d %s %s\t%d\t%d\t%d\t%d\t%d\t%d",p1->num,p1

71、->name,p1->quale,p1->time,p1->credit,p1->thtime,p1->extime,p1->term,p1->alnum);</p><p>  printf("\n");</p><p>  p1=p1->next;</p><p><b>  }

72、</b></p><p><b>  }</b></p><p>  void inquire(struct stu*p,int n) //定義查詢(xún)信息函數(shù)</p><p><b>  {</b></p><p>  printf("輸入要查詢(xún)的編號(hào):");

73、</p><p>  scanf("%d",&n);</p><p>  struct stu *p1;</p><p><b>  p1=p;</b></p><p>  printf("您所查詢(xún)的信息是:\n");</p><p><b&g

74、t;  do </b></p><p><b>  {</b></p><p>  if (p1->num==n)</p><p><b>  {</b></p><p>  printf("編號(hào) 名稱(chēng) 性質(zhì) 總學(xué)時(shí) 總學(xué)分 理論學(xué)時(shí) 實(shí)驗(yàn)學(xué)時(shí) 開(kāi)課學(xué)期 已修本課的人數(shù)\

75、n");</p><p>  printf("%d %s %s\t%d\t%d\t%d\t%d\t%d\t%d",p1->num,p1->name,p1->quale,p1->time,p1->credit,p1->thtime,p1->extime,p1->term,p1->alnum);</p><p>

76、;  printf("\n");</p><p>  p1=p1->next;</p><p><b>  }</b></p><p><b>  else </b></p><p>  p1=p1->next;</p><p>  }whil

77、e(p1!=NULL);</p><p><b>  }</b></p><p>  void stu_classes(struct stu*p,int num) //定義學(xué)生選課信息的函數(shù),并保存至"選修信息文件.txt"</p><p><b>  {</b></p>&l

78、t;p><b>  int snum;</b></p><p>  struct stu*head,*p1;</p><p><b>  p1=p;</b></p><p>  printf("請(qǐng)輸入學(xué)生學(xué)號(hào):");</p><p>  scanf("%d&quo

79、t;,&snum);</p><p>  printf("輸入課程編號(hào):");</p><p>  scanf("%d",&num);</p><p><b>  do</b></p><p><b>  {</b></p>&l

80、t;p>  if (p1->num=num)</p><p><b>  {</b></p><p><b>  FILE*fp;</b></p><p>  fp=fopen("選修信息文件.txt","w");</p><p>  fprint

81、f(fp,"學(xué)生學(xué)號(hào) 課程編號(hào) 名稱(chēng) 性質(zhì) 總學(xué)時(shí) 總學(xué)分 理論學(xué)時(shí) 實(shí)驗(yàn)學(xué)時(shí) 開(kāi)課學(xué)期 已修本課的人數(shù)\n");</p><p>  fprintf(fp,"%d\t%d\t%s\t%s\t%d\t%d\t%d\t%d\t%d\t%d",snum,p1->num,p1->name,p1->quale,p1->time,p1->credit,p

82、1->thtime,p1->extime,p1->term,p1->alnum);</p><p>  fclose(fp);</p><p>  printf("已保存至“選修信息文件.txt”\n");</p><p><b>  }</b></p><p><b&g

83、t;  else </b></p><p>  p1=p1->next;</p><p>  }while(p1=NULL);</p><p><b>  }</b></p><p>  void inquire_stu(struct stu*p,int numb) //定義查詢(xún)學(xué)生信息的函數(shù)&

84、lt;/p><p><b>  {</b></p><p><b>  int snum;</b></p><p>  printf("請(qǐng)輸入學(xué)號(hào):");</p><p>  scanf("%d",&snum);</p><p> 

85、 struct stu*head,*p1;</p><p><b>  p1=p;</b></p><p>  printf("學(xué)號(hào) 課程編號(hào) 課程名稱(chēng)\n");</p><p>  printf("%d\t%d\t%s",snum,p1->num,p1->name);</p>

86、<p>  printf("\n");</p><p><b>  }</b></p><p>  void save_inf(struct stu*p) //定義保存課程信息的文件</p><p><b>  {</b></p><p><b>

87、;  int i;</b></p><p>  struct stu *p1,*head;</p><p><b>  p1=p;</b></p><p><b>  FILE*fp;</b></p><p>  fp=fopen("課程信息.txt","w

88、");</p><p>  for (i=0;p1!=NULL;i++)</p><p><b>  {</b></p><p>  fprintf(fp,"課程編號(hào) 名稱(chēng) 性質(zhì) 總學(xué)時(shí) 總學(xué)分 理論學(xué)時(shí) 實(shí)驗(yàn)學(xué)時(shí) 開(kāi)課學(xué)期 已修本課的人數(shù)\n");</p><p>  fprintf(fp

89、,"%d\t%s\t%s\t%d\t%d\t%d\t%d\t%d\t%d\n",p1->num,p1->name,p1->quale,p1->time,p1->credit,p1->thtime,p1->extime,p1->term,p1->alnum);</p><p>  p1=p1->next;</p><

90、p><b>  }</b></p><p>  fclose(fp); </p><p>  printf("已保存至“課程信息.txt”\n");</p><p><b>  }</b></p><p>  void read_inf(struct stu*p)

91、 //定義讀出課程信息的函數(shù)</p><p><b>  {</b></p><p><b>  int i;</b></p><p>  struct stu *p1,*head;</p><p><b>  p1=p;</b></p><p&

92、gt;<b>  FILE*fp;</b></p><p>  if ((fp=fopen("課程信息.txt","r"))==NULL)</p><p><b>  {</b></p><p>  printf("無(wú)法打開(kāi)文件\n");</p>&

93、lt;p>  printf("請(qǐng)先建立文件\n");</p><p><b>  }</b></p><p>  for (i=1;p1!=NULL;i++)</p><p><b>  {</b></p><p>  fread(&p,sizeof(head),

94、1,fp);</p><p>  printf("%d %s %s\t%d\t%d\t%d\t%d\t%d\t%d\n",p1->num,p1->name,p1->quale,p1->time,p1->credit,p1->thtime,p1->extime,p1->term,p1->alnum);</p><p>

95、  p1=p1->next;</p><p><b>  }</b></p><p>  fclose(fp);</p><p><b>  }</b></p><p>  void reset() //定義清楚界面函數(shù)</p>

96、<p><b>  {</b></p><p>  printf("按任意鍵繼續(xù)");</p><p><b>  getch();</b></p><p>  system("CLS");</p><p><b>  }</b>

97、;</p><p><b>  各階段運(yùn)行結(jié)果:</b></p><p><b>  主界面的輸出:</b></p><p><b>  數(shù)據(jù)的輸入:</b></p><p><b>  數(shù)據(jù)的輸出:</b></p><p><

98、;b>  查詢(xún)信息 :</b></p><p><b>  選課并保存:</b></p><p><b>  保存的文件:</b></p><p><b>  查詢(xún)選課信息:</b></p><p><b>  保存課程信息:</b>&l

99、t;/p><p><b>  保存的文件:</b></p><p><b>  讀取以保存的文件:</b></p><p><b>  錯(cuò)誤提示:</b></p><p><b>  總結(jié)與體會(huì)</b></p><p>  這次的課程設(shè)

100、計(jì)實(shí)驗(yàn)是對(duì)我們進(jìn)入大學(xué)以來(lái)學(xué)習(xí)C語(yǔ)言結(jié)果的一次大考驗(yàn)。自己動(dòng)手,發(fā)現(xiàn)問(wèn)題和解決問(wèn)題。并發(fā)現(xiàn)了許多自己的不足,平時(shí)沒(méi)掌握的知識(shí)在實(shí)踐中暴漏,經(jīng)過(guò)不斷的思考,查閱書(shū)籍和上網(wǎng)查資料及上機(jī)運(yùn)行,解決了大部分問(wèn)題,還稍微有些小問(wèn)題。但是,我相信經(jīng)過(guò)深入的的學(xué)習(xí),一定能把它解決好。當(dāng)今計(jì)算機(jī)應(yīng)用在生活中可以說(shuō)得是無(wú)處不在。因此作為二十一世紀(jì)的大學(xué)來(lái)說(shuō)掌握程序開(kāi)發(fā)技術(shù)是十分重要的,而C語(yǔ)言又是最常見(jiàn),功能最強(qiáng)大的一種高級(jí)語(yǔ)言,因此做好C語(yǔ)言課程設(shè)計(jì)是

101、十分必要的。 </p><p>  我不僅鞏固《C語(yǔ)言程序設(shè)計(jì)》課程學(xué)習(xí)的內(nèi)容,掌握設(shè)計(jì)的基本方法,強(qiáng)化上機(jī)動(dòng)手能力,還進(jìn)一步掌握以下了知識(shí):數(shù)據(jù)類(lèi)型、循環(huán)控制、函數(shù)的定義及調(diào)用、結(jié)構(gòu)體及指針、文件操作、編譯預(yù)處理等;通過(guò)課程設(shè)計(jì),增強(qiáng)了自己動(dòng)手的能力,有了這次成功的設(shè)計(jì),給了我極大的信心,在以后的學(xué)習(xí)中會(huì)更加認(rèn)真,努力。 </p><p>  通過(guò)這次課程設(shè)計(jì)使我們懂

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論