www.日本精品,久久中文视频,中文字幕第一页在线播放,香蕉视频免费网站,老湿机一区午夜精品免费福利,91久久综合精品国产丝袜长腿,欧美日韩视频精品一区二区

學(xué)生信息管理系統(tǒng)C語(yǔ)言編寫(xiě)-編輯學(xué)生信息如何寫(xiě)

發(fā)布時(shí)間:2020-07-28 來(lái)源: 主持詞 點(diǎn)擊:

 目

 錄

 1 設(shè)計(jì)目得………………………………………………………………………3 2 設(shè) 計(jì) 題 目 及 要 求 … … … … … … … … … … … … … … … … … … … … 3 3設(shè)計(jì)算法分析………………………………………………………………3

  3、1 模塊調(diào)用層次圖………………………………………………………3

  3、2 核心算法描述………………………………………………………4

  3、3 系統(tǒng)特點(diǎn)………………………………………………………6 4 程序代碼………………………………………………………………………6 5調(diào)試情況……………………………………………………………………8 6 結(jié)論……………………………………………………………………………11

 學(xué)生信息管理

 1 1 、設(shè)計(jì)目得

 本課程設(shè)計(jì)得目得就就是要通過(guò)一次集中得強(qiáng)化訓(xùn)練,使學(xué)生能及時(shí)鞏固已學(xué)得知識(shí),補(bǔ)充未學(xué)得但又必要得內(nèi)容。進(jìn)行課程設(shè)計(jì)目得在于加深對(duì)程序設(shè)計(jì)基礎(chǔ)中基礎(chǔ)理論與基本知識(shí)得理解,促進(jìn)理論與實(shí)踐得結(jié)合,進(jìn)一步提高程序設(shè)計(jì)得能力.具體目得如下: 1.使學(xué)生更深入地理解與掌握該課程中得有關(guān)基本概念,程序設(shè)計(jì)思想與方法. 2.培養(yǎng)學(xué)生綜合運(yùn)用所學(xué)知識(shí)獨(dú)立完成課題得能力。

。。培養(yǎng)學(xué)生勇于探索、嚴(yán)謹(jǐn)推理、實(shí)事求就是、有錯(cuò)必改,用實(shí)踐來(lái)檢驗(yàn)理論,全方位考慮問(wèn)題等科學(xué)技術(shù)人員應(yīng)具有得素質(zhì). 4。提高學(xué)生對(duì)工作認(rèn)真負(fù)責(zé)、一絲不茍,對(duì)同學(xué)團(tuán)結(jié)友愛(ài),協(xié)作攻關(guān)得基本素質(zhì)。

 5.培養(yǎng)學(xué)生從資料文獻(xiàn)、科學(xué)實(shí)驗(yàn)中獲得知識(shí)得能力,提高學(xué)生從別人經(jīng)驗(yàn)中找到解決問(wèn)題得新途徑得悟性,初步培養(yǎng)工程意識(shí)與創(chuàng)新能力。

 6.對(duì)學(xué)生掌握知識(shí)得深度、運(yùn)用理論去處理問(wèn)題得能力、實(shí)驗(yàn)?zāi)芰、課程設(shè)計(jì)能力、書(shū)面及口頭表達(dá)能力進(jìn)行考核. 2 2 、設(shè)計(jì)題目及要求

 【1】設(shè)計(jì)題目

 【2】要求 實(shí)現(xiàn)如下功能:

 (1)建立學(xué)生信息得結(jié)構(gòu)體 (2)學(xué)生信息得初始化(可以從文件獲。

 (3)學(xué)生信息得添加、修改、刪除、查找 (4)學(xué)生信息得輸出 (5)對(duì)學(xué)生信息按學(xué)號(hào)、成績(jī)排序 (6)計(jì)算一門(mén)課得平均分與總分 (7)將學(xué)生信息保存為文件 綜合應(yīng)用數(shù)組、指針、結(jié)構(gòu)體、文件等,對(duì)該設(shè)計(jì)題目進(jìn)行設(shè)計(jì)與實(shí)現(xiàn)。課程設(shè)計(jì)完成后,提交課程設(shè)計(jì)報(bào)告。

 3 3 、 設(shè)計(jì) 算法分析

 3、1 模塊調(diào)用層次圖

  【1】變量描述

 定義形式/名稱 含義/作用 數(shù)組 char name[20] 定義姓名數(shù)組 結(jié)構(gòu)體 struct student stu[50] 聲明一個(gè)結(jié)構(gòu)數(shù)組 全局變量 int input=0;float ave,sum;

 全局變量標(biāo)記當(dāng)前錄入學(xué)生個(gè)數(shù)

 FILE *fp;

 文件 stu_list2、doc 保存學(xué)生信息 函數(shù) Save InputStu DelStu Modif y Stu FindStu InsertStu SortStu ListStu 保存 錄入 刪除 修改 查找 插入 排序 顯示學(xué)生信息

 【2】系統(tǒng)模塊調(diào)用層次圖

 3、2核心算法描述

 1、總體模塊流程圖:

 N

 T

  2、修改模塊:

  for(i=0;i<=15;i++)

  for(i=0;i<input;i++)

 stu[i]、num==id

  T(flag!=0)

 F(flag!=0)

 輸出修改后學(xué)生信息

 printf(”\n\nnull")

  3、查詢模塊: Main ListStu SortStu ModifyStu FindStu InsertStu Save InputStu DelStu

  開(kāi)始

 !(scanf("%d",&in1)==1

  學(xué)生信息

 修改

 查詢

  插入

  刪除

  排序

 保存

 結(jié)束

 for(i=0;i<=15;i++)

 for(i=0;i<input;i++)

  (stu[i]、num==id)

  T

 (flag=0)

  F (flag!=0)

 輸出查詢后學(xué)生信息

。餽intf("\n\nnull")

  (stu[i]、classid==id)

  T (flag=0)

  F(flag!=0)

  輸出查詢后學(xué)生信息

  printf(”\n\nnull”)

 T (flag=0)

  (!strcmp(stu[i]、name,name))

  F(flag!=0)

 輸出查詢后學(xué)生信息

 無(wú)找到有關(guān)信息 4、插入模塊: for(i=0;i<input;i++)

。髏u[i]、num=id

。0=galf(T? F(flag。剑)

  學(xué)號(hào)信息已經(jīng)存在

  輸入要插入學(xué)生信息

 5、刪除模塊:

 ask != "n’ T

。 i=0;i〈input;i++

  stu[i]、num == delnum

 T (flag=0)

 F(flag!=0)

。妫飏(j=i;j<input;j++)

 刪除成功且

 顯示刪除后數(shù)據(jù)

 刪除指定學(xué)生得信息

  沒(méi)有要?jiǎng)h除得學(xué)生 6、排序模塊:

  chose==1 T

 F(chose==2) for(i=0;i〈input-1;i++)

  for(i=0;i〈input-1;i++)

 for(j=i+1;j〈input;j++)

 for(j=i+1;j<input;j++)

  stu[i]、num〉stu[j]、num

。髏u[i]、ave〈stu[j]、ave

 T

  F

  T

 F

 temp=stu[i]

  temp=stu[i]

 stu[i]=stu[j]

  stu[i]=stu[j]

 stu[j]=temp

  stu[j]=temp 3、3 系統(tǒng)特點(diǎn) 【1】特點(diǎn):這個(gè)學(xué)生信息管理系統(tǒng)建立了學(xué)生信息得結(jié)構(gòu)體,實(shí)現(xiàn)了學(xué)生信息得錄入、添加、修改、刪除、查找等功能,并能計(jì)算學(xué)生得平均分與總分,對(duì)學(xué)生進(jìn)行排序。

。、 程序代碼

 【1】程序代碼

  void Help();

 void Save(struct student stu[]);

  void InputStu(struct student stu[]);

 void DelStu(struct student stu[]);

 void ModifyStu(struct student stu[]);

 void FindStu(struct student stu[]);

  void InsertStu(struct student stu[]);

 void SortStu(struct student stu[]);

  void ListStu(struct student stu[]);

  void main()

  {

 struct student stu[50];

  struct student *p;

 int

 in;

 int

。椋1;

  char ch;

  void InputStu(struct student stu[])

  {

 pp=stu;

  system("cls");

 int i;

 printf("Number of students you want to enter informat(yī)ion:");

 scanf("%d",&input); if((fp=fopen("inputdata、sys","wb+"))==NULL)

  {

 printf("Cannot open

 any key exit!");

 getch();

  exit(1);

 }

  void ModifyStu(struct student stu[])

 {

 system("cls");

 pp=stu;

  int id,i,flag=1;

。閒((fp=fopen("modifydata、sys","wb+"))==NULL)

  {

 printf(”Cannot open

 any key exit!”); getch();

 exit(1);

  }

。鰋id FindStu(struct student stu[])

 {

 system("cls");

 int i=0,id,flag=1,chose;

。餽intf("\nPlease select query:

。薄o、 inquiries by school;2、Query by class;3、Query by name\n"); scanf("%d",&chose); switch(chose){ case 1:

 printf(”Please enter your query No、 students:”); scanf("%d”,&id); for(i=0;i<input;i++) {

。椋 (stu[i]、num==id)

  {

 flag=0; stu[i]、sum=stu[i]、score1+stu[i]、score2+stu[i]、score3; stu[i]、ave=stu[i]、sum/3; printf(”\nNo、 Studies\ Name\ No、 classes\ The first subjec\

 The second subject\ The third subject\Average \Total\n"); void InsertStu(struct student stu[ ])

  {

 system(”cls”); int flag=1;

 pp=stu;

。閚t i,id; if((fp=fopen("insertdata、sys”,”wb+”))==NULL)

  {

 printf("Cannot open

 any key exit!”); getch();

 exit(1);

  }

  void ListStu(struct student stu[])

  {

 int i=0; for(i=0;i〈input;i++)

 {

 stu[i]、sum=stu[i]、score1+stu[i]、score2+stu[i]、score3; stu[i]、ave=stu[i]、sum/3;} printf("\nNo、 Studies\ Name\ No、 classes\ The first subjec\

。詇e second subject\ The third subject\Average \Total\n”); for(i=0;i<input;i++)

。鹥rintf("\n %d %s %d \t%d \t%d \t%d

 \t%d

  %d”,stu[i]、num,stu[i]、name,stu[i]、classid,stu[i]、score1,stu[i]、score2,stu[i]、score3,stu[i]、ave, stu[i]、sum);

。

 getch();

。 void DelStu(struct student stu[])

。

 system(”cls"); pp=stu;

 int delnum,flag=1;

  char ask;

 int i,j; if((fp=fopen("Deldata、sys","wb+"))==NULL)

  {

 printf("Cannot open

。醤y key exit!”); getch();

  exit(1);

 } void SortStu(struct student stu[])

 {

 system("cls"); int i,j,chose;

 struct student temp; printf(”To sort the data before:\n”); printf("\nNo、 Studies\ Name\ No、 classes\ The first subjec\

。裕鑕 second subject\ The third subject\Average \Total\n"); for(i=0;i<input;i++) {printf(”\n %d

  %s

 %d

。ィ鋅t %d\t

 %d\t %d\t %d\n",stu[i]、num,stu[i]、name,stu[i]、classid,stu[i]、score1,stu[i]、score2,stu[i]、score3,stu[i]、ave,stu[i]、sum);

  } printf("\n1、Sort by Student ID\t2、By the average score (high → low) Sort\n");

 void Save(struct student stu[])

  {

。閚t i,j;

  pp=stu;

 system(”cls"); printf(”\n\n\n\n\t\t\tSaving"); if((fp=fopen(”stu_list2、doc”,”wb+"))==NULL)

  {

 printf("Cannot open

 any key exit!"); getch();

  exit(1); }

  【2】程序執(zhí)行結(jié)果

 【3】結(jié)果得討論:系統(tǒng)最后將修改過(guò)后得學(xué)生信息保存了下來(lái) 5 5 、 調(diào)試情況

  三科成績(jī)、平均分、總分不能用 float定義應(yīng)改為 int

  定義應(yīng)在函數(shù)得最前端

 文件未定義

 這就是建立學(xué)生信息文件

 添加學(xué)生信息并計(jì)算平均分與總分

 找不到要?jiǎng)h除得學(xué)生信息

  刪除了學(xué)號(hào)為 12 得學(xué)生信息

 修改學(xué)生信息

 新學(xué)生信息記錄

 保存信息后退出程序 6 6 、結(jié)論

 (1)能夠通過(guò)編譯時(shí)出現(xiàn)得出錯(cuò)提示信息,進(jìn)行初步得糾錯(cuò)。

 (2)完成一個(gè)程序得一般步驟為設(shè)計(jì),錄入 ,編譯 ,如果出錯(cuò),則修改,然后再編譯,編譯成功后,瞧瞧結(jié)果就是否正確,如果結(jié)果不正確,則再重復(fù)以上步驟。

。3)從這次編程序得過(guò)程中,我學(xué)到了編程所必須具備得專業(yè)技能,更領(lǐng)會(huì)編譯程序所需要得細(xì)心與耐心。

相關(guān)熱詞搜索:學(xué)生 信息管理系統(tǒng) 編寫(xiě)

版權(quán)所有 蒲公英文摘 www.newchangjing.com