欧美色欧美亚洲高清在线观看,国产特黄特色a级在线视频,国产一区视频一区欧美,亚洲成a 人在线观看中文

  1. <ul id="fwlom"></ul>

    <object id="fwlom"></object>

    <span id="fwlom"></span><dfn id="fwlom"></dfn>

      <object id="fwlom"></object>

      C語言課程設(shè)計學(xué)生通訊錄管理系統(tǒng)設(shè)計

      2020-08-13 23:40:03下載本文作者:會員上傳
      簡介:寫寫幫文庫小編為你整理了這篇《C語言課程設(shè)計學(xué)生通訊錄管理系統(tǒng)設(shè)計》,但愿對你工作學(xué)習(xí)有幫助,當(dāng)然你在寫寫幫文庫還可以找到更多《C語言課程設(shè)計學(xué)生通訊錄管理系統(tǒng)設(shè)計》。

      C語言課程設(shè)計學(xué)生通訊錄管理系統(tǒng)設(shè)計

      一、題目內(nèi)容的描述

      學(xué)生通訊錄管理系統(tǒng)設(shè)計

      設(shè)計一個學(xué)生通信錄,學(xué)生通迅錄數(shù)據(jù)信息構(gòu)成內(nèi)容可自行設(shè)計(如:姓名、家庭地址、郵政編碼、電話號碼等等),通信錄數(shù)據(jù)類型定義為結(jié)構(gòu)體類型。由鍵盤輸入數(shù)據(jù)(最好要考慮輸入數(shù)據(jù)輸入的格式及輸入數(shù)據(jù)的有效性),然后進(jìn)行以下的功能實現(xiàn)。程序要求主函數(shù)是一個功能選擇菜單,其它各功能都用各自的函數(shù)實現(xiàn)。

      功能要求如下:

      1、能建立、修改和增刪學(xué)生通訊錄

      2、能夠按多種方式進(jìn)行查詢,例如按姓名、按電話號碼等。

      3、通訊錄的數(shù)據(jù)保存在文件中,運行程序時將通訊錄數(shù)據(jù)從文件讀取到內(nèi)存中。對通訊錄進(jìn)行增加、刪除、修改學(xué)生數(shù)據(jù)后,提供功能菜單,可以將內(nèi)存中修改過的通訊錄重新保存至文件。

      二、應(yīng)用程序功能的詳細(xì)說明

      1、應(yīng)用程序?qū)崿F(xiàn)了可視化的系統(tǒng)操作界面。

      2、對學(xué)生通訊錄形成了系統(tǒng)化的管理,操作簡便明了。

      3、程序具有系統(tǒng)幫助,添加、顯示、查詢、刷新、刪除、排序、保存、修改、讀取學(xué)生通訊錄的功能。各項功能均可按照文字提示操作,淺顯易懂。

      4、系統(tǒng)的各個功能模塊都用函數(shù)的形式來實現(xiàn)(readfile()、seek()、modify()、sort()、insert()、del()、save()、menu())方便查看。

      5.可以將信息保存在文件(“student.txt“)中,亦可將信息從文件中讀取出來,靈活方便。

      三、主要模塊的算法描述

      學(xué)生通訊錄管理系統(tǒng)

      刷新學(xué)生信息readfile()

      查詢學(xué)生信息seek()

      增加學(xué)生信息insert()

      顯示學(xué)生信息display()

      退出系統(tǒng)

      修改學(xué)生信息modify()

      刪除學(xué)生信息del()

      保存當(dāng)前學(xué)生信息save()

      匯總當(dāng)前學(xué)生數(shù)目number()

      系統(tǒng)幫助help()

      查詢學(xué)生信息

      按姓名查詢

      退出

      按學(xué)號查詢

      開始

      以可讀寫的方式打開一個數(shù)據(jù)文件

      將此文件的內(nèi)容讀出,并存入一個新的結(jié)構(gòu)體類型的數(shù)組中。

      調(diào)用menu()菜單函數(shù)

      進(jìn)入while()主循環(huán)

      輸入1-8中的一數(shù)值,選擇相應(yīng)操作。

      輸入是否為0

      判斷鍵值,調(diào)用相應(yīng)函數(shù),完成相應(yīng)功能。

      是否已對修改存盤

      調(diào)用函數(shù)save()函數(shù),進(jìn)行寫數(shù)據(jù)文件操作

      結(jié)束

      模塊一:頭文件,變量定義,函數(shù)的聲明

      對系統(tǒng)所使用的變量進(jìn)行定義,對函數(shù)進(jìn)行聲明。

      模塊二:錄入學(xué)生信息

      聲明函數(shù)void

      readfile(),說明一個文件指針FILE

      *fp打開文

      件“student.txt“。

      模塊三:學(xué)生信息的查找

      聲明void

      seek()為查找函數(shù),通過switch(item)設(shè)定用學(xué)號查找,用姓名查找兩個分支。

      模塊四:學(xué)生信息的修改

      聲明void

      modify()為學(xué)生信息修改函數(shù),通過switch(item)設(shè)定

      所要修改的項目。

      模塊五:刷新學(xué)生信息

      聲明void

      sort()將錄入學(xué)生系按升序排列,用的是“冒泡排序法”

      實現(xiàn)排序。

      模塊六:增加學(xué)生信息

      聲明void

      insert()插入學(xué)生信息,先通過判斷學(xué)生是否存在,若

      否則繼續(xù)輸入,若是則跳出,重新循環(huán)。

      模塊七:刪除學(xué)生信息

      聲明void

      del()實現(xiàn)學(xué)生信息刪除,通過學(xué)號對比確定要刪除的信

      息,然后用后一個替換掉。

      模塊八:顯示學(xué)生信息

      通過display()函數(shù)輸出學(xué)生信息。

      模塊九:保存信息

      通過fp=fopen(“student.txt“,“w“);寫入信息。

      模塊十:匯總學(xué)生數(shù)目

      通過number()函數(shù)將已有男女生及總學(xué)生數(shù)目匯總出來。

      模塊十一:系統(tǒng)幫助

      通過help()函數(shù)幫助操作。

      模塊十二:界面菜單

      通過switch(num)調(diào)用以上各函數(shù),實現(xiàn)功能。

      1、程序采用模塊化設(shè)計,各模塊獨立,可分塊調(diào)試,個模塊由主函數(shù)控制調(diào)用。

      2、其中主要模塊(readfile()、seek()、modify())都是利用數(shù)組,指針來實現(xiàn)數(shù)據(jù)結(jié)構(gòu)設(shè)計。

      3、數(shù)據(jù)庫設(shè)計的任務(wù)是確定系統(tǒng)所需要的數(shù)據(jù)庫。數(shù)據(jù)庫是表的集合,通常一個系統(tǒng)只需一個數(shù)據(jù)庫。設(shè)計人

      是根據(jù)需求分析,確定數(shù)據(jù)庫所包含的表及字段、表間的關(guān)系,然后具體確定表的結(jié)構(gòu),包括字段名、字段類型及寬度,需要的索引等。根據(jù)對需求得到的數(shù)據(jù)結(jié)構(gòu)進(jìn)行分析,按數(shù)據(jù)輸入輸出的要求,確定表和表間的關(guān)系,進(jìn)行驗證、調(diào)整、修改、完善,使其能夠?qū)崿F(xiàn)用戶對數(shù)據(jù)和功能的要求。通訊信息表包括以下字段:學(xué)號,姓名,年齡,性別,出生年月,地址,電話,E-mail。學(xué)號為主索引。

      四、結(jié)束語

      我設(shè)計的程序總體功能大都能夠運行順利,但有許多地方比較復(fù)雜,需要進(jìn)一步修改,進(jìn)行簡化。通過這次課程設(shè)計的鍛煉,我收獲很多,具體歸納為以下幾點:

      1、首先,也是最重要的一點,學(xué)會如何將一個復(fù)雜的問題簡化,將一個較大的問題分成幾個小問題,再一一解決這些小問題。在設(shè)計一個程序之前,要學(xué)會對程序功能進(jìn)行規(guī)劃,將其分為幾個不同的功能模塊,要思路清晰,簡單易用;

      2、學(xué)會靈活運用已有的知識,同時適當(dāng)?shù)耐卣挂恍┲R;比如,這次設(shè)計過程中,有一些函數(shù)以前就很少用到,甚至沒有見過,但對程序的設(shè)計及用戶界面的改善帶來方便;

      3、解決問題時,要盡可能考慮全面。每一個細(xì)節(jié)都很重要,既要避免功能的重復(fù),也要避免功能疏漏的地方!

      4、在這次課程設(shè)計過程中,參考了許多資料,發(fā)現(xiàn)C語言真的很有意思!比如我看到一個關(guān)于用C語言編寫的小程序:五子棋、俄羅斯方塊、推箱子等,等這次課程結(jié)束后,我就想利用C語言編寫這些小游戲。曾經(jīng)認(rèn)為C是個挺枯燥的課程,現(xiàn)在發(fā)現(xiàn)這不僅僅是個簡單的課程,而是個很實用的計算機(jī)工具!

      五、程序源代碼清單

      #include

      #include

      #include

      #define

      BUFLEN

      #define

      LEN

      #define

      N

      struct

      record

      {

      char

      code[LEN+1];

      char

      name[LEN+1];

      int

      age;

      char

      sex[3];

      char

      time[LEN+1];

      char

      add[30];

      char

      tel[LEN+1];

      char

      mail[30];

      }stu[N];

      int

      k=1,n,m;

      void

      readfile();

      void

      seek();

      void

      modify();

      void

      insert();

      void

      del();

      void

      display();

      void

      save();

      void

      number();

      void

      menu();

      int

      main()

      {

      while(k)

      menu();

      system(“pause“);

      return

      0;

      }

      void

      readfile()//刷新學(xué)生信息

      {

      char

      *p=“student.txt“;

      FILE

      *fp;

      int

      i=0;

      if

      ((fp=fopen(“student.txt“,“r“))==NULL)

      {

      printf(“Open

      file

      %s

      error!

      Strike

      any

      key

      to

      exit!“,p);

      system(“pause“);

      exit(0);

      }

      while(fscanf(fp,“%s

      %s%d%s

      %s

      %s

      %s

      %s“,stu[i].code,stu[i].name,&stu[i].age,stu[i].sex,stu[i].time,stu[i].add,stu[i].tel,stu[i].mail)==8)

      {

      i++;

      i=i;

      }

      fclose(fp);

      n=i;

      printf(“錄入完畢?。躰“);

      }

      void

      seek()//查詢學(xué)生信息

      ......void

      modify()//修改學(xué)生信息

      ......void

      sort()//對學(xué)生信息按學(xué)號排序

      {

      int

      i,j,*p,*q,s;

      char

      temp[10];

      for(i=0;i

      {

      for(j=n-1;j>i;j--)

      if(strcmp(stu[j-1].code,stu[j].code)>0)

      {

      strcpy(temp,stu[j-1].code);

      strcpy(stu[j-1].code,stu[j].code);

      strcpy(stu[j].code,temp);

      strcpy(temp,stu[j-1].name);

      strcpy(stu[j-1].name,stu[j].name);

      strcpy(stu[j].name,temp);

      strcpy(temp,stu[j-1].sex);

      strcpy(stu[j-1].sex,stu[j].sex);

      strcpy(stu[j].sex,temp);

      strcpy(temp,stu[j-1].time);

      strcpy(stu[j-1].time,stu[j].time);

      strcpy(stu[j].time,temp);

      strcpy(temp,stu[j-1].add);

      strcpy(stu[j-1].add,stu[j].add);

      strcpy(stu[j].add,temp);

      strcpy(temp,stu[j-1].tel);

      strcpy(stu[j-1].tel,stu[j].tel);

      strcpy(stu[j].tel,temp);

      strcpy(temp,stu[j-1].mail);

      strcpy(stu[j-1].mail,stu[j].mail);

      strcpy(stu[j].mail,temp);

      p=&stu[j-1].age;

      q=&stu[j].age;

      s=*q;

      *q=*p;

      *p=s;

      }

      }

      }

      void

      insert()//增加學(xué)生信息

      ......void

      display()//顯示當(dāng)前學(xué)生信息

      {

      int

      i;

      printf(“所有學(xué)生的信息為:\n“);

      printf(“學(xué)生學(xué)號,學(xué)生姓名,年齡,性別,出生年月,地址,電話,E-mail\n“);

      printf(“--------------------------------------------------------------------\n“);

      for(i=0;i

      {

      printf(“%6s,%7s,%5d,%5s,%9s,%8s,%10s,%14s\n“,stu[i].code,stu[i].name,stu[i].age,stu[i].sex,stu[i].time,stu[i].add,stu[i].tel,stu[i].mail);

      }

      }

      void

      save()//保存當(dāng)前學(xué)生信息

      {

      int

      i;

      FILE

      *fp;

      fp=fopen(“student.txt“,“w“);

      for(i=0;i

      {

      fprintf(fp,“%s,%s,%d,%s,%s,%s,%s,%s\n“,stu[i].code,stu[i].name,stu[i].age,stu[i].sex,stu[i].time,stu[i].add,stu[i].tel,stu[i].mail);

      }

      fclose(fp);

      }

      void

      number()//匯總學(xué)生數(shù)目

      {

      int

      i,girl,boy=0;

      for(i=0;i

      if(strcmp(stu[i].sex,“1“)==0)

      {boy++;}

      girl=n-boy;

      printf(“男生人數(shù)是:%d\n女生的人數(shù)是:%d\n“,boy,girl);

      printf(“總的學(xué)生人數(shù)為:%d“,n);

      }

      void

      help()//系統(tǒng)幫助

      {

      printf(“輸入性別時男為1,女為2“);

      printf(“\n3.增加學(xué)生信息后,切記保存按7;\n“);

      printf(“\n4.謝謝您的使用?。躰“);

      }

      void

      menu()//可視化的系統(tǒng)操作界面

      {

      int

      num;

      printf(“

      \n\n

      學(xué)生通訊錄管理系統(tǒng)

      \n\n“);

      printf(“

      *********************系統(tǒng)功能菜單************************

      \n“);

      printf(“

      --------------------------------

      -------------------------------

      \n“);

      printf(“

      1.刷新學(xué)生信息

      2.查詢學(xué)生信息

      \n“);

      printf(“

      *********************************************

      \n“);

      printf(“

      3.修改學(xué)生信息

      4.增加學(xué)生信息

      \n“);

      printf(“

      *********************************************

      \n“);

      printf(“

      5.按學(xué)號刪除信息

      6.顯示當(dāng)前信息

      \n“);

      printf(“

      *********************************************

      \n“);

      printf(“

      7.保存當(dāng)前學(xué)生信息

      8.匯總學(xué)生數(shù)目

      \n“);

      printf(“

      *********************************************

      \n“);

      printf(“

      9.系統(tǒng)幫助

      10.退出系統(tǒng)

      \n“);

      printf(“

      ---------------------------------

      ------------------------------

      \n“);

      printf(“

      ************************************************************

      \n“);

      printf(“請選擇菜單編號:“);

      scanf(“%d“,&num);

      switch(num)

      {

      case

      1:readfile();break;

      case

      2:seek();break;

      case

      3:modify();break;

      case

      4:insert();break;

      case

      5:del();break;

      case

      6:display();break;

      case

      7:save();break;

      case

      8:number();break;

      case

      9:help();break;

      case

      10:k=0;break;

      default:printf(“請在1-10之間選擇\n“);

      }

      }

      下載C語言課程設(shè)計學(xué)生通訊錄管理系統(tǒng)設(shè)計word格式文檔
      下載C語言課程設(shè)計學(xué)生通訊錄管理系統(tǒng)設(shè)計.doc
      將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
      點此處下載文檔

      文檔為doc格式


      聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),未作人工編輯處理,也不承擔(dān)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)有涉嫌版權(quán)的內(nèi)容,歡迎發(fā)送郵件至:645879355@qq.com 進(jìn)行舉報,并提供相關(guān)證據(jù),工作人員會在5個工作日內(nèi)聯(lián)系你,一經(jīng)查實,本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

      相關(guān)范文推薦