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

學生信息管理系統(tǒng)C語言編寫-編輯學生信息如何寫

發(fā)布時間:2020-07-28 來源: 主持詞 點擊:

 目

 錄

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

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

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

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

 學生信息管理

 1 1 、設(shè)計目得

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

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

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

 6.對學生掌握知識得深度、運用理論去處理問題得能力、實驗?zāi)芰、課程設(shè)計能力、書面及口頭表達能力進行考核. 2 2 、設(shè)計題目及要求

 【1】設(shè)計題目

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

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

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

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

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

  【1】變量描述

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

 全局變量標記當前錄入學生個數(shù)

 FILE *fp;

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

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

 3、2核心算法描述

 1、總體模塊流程圖:

。

 T

  2、修改模塊:

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

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

 stu[i]、num==id

  T(flag!=0)

 F(flag!=0)

 輸出修改后學生信息

 printf(”\n\nnull")

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

  開始

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

  學生信息

 修改

 查詢

  插入

  刪除

  排序

 保存

 結(jié)束

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

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

  (stu[i]、num==id)

  T

 (flag=0)

  F (flag!=0)

 輸出查詢后學生信息

。餽intf("\n\nnull")

  (stu[i]、classid==id)

  T (flag=0)

  F(flag!=0)

  輸出查詢后學生信息

  printf(”\n\nnull”)

 T (flag=0)

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

  F(flag!=0)

 輸出查詢后學生信息

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

。髏u[i]、num=id

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

  學號信息已經(jīng)存在

  輸入要插入學生信息

 5、刪除模塊:

 ask != "n’ T

 F i=0;i〈input;i++

  stu[i]、num == delnum

 T (flag=0)

 F(flag!=0)

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

 刪除成功且

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

 刪除指定學生得信息

  沒有要刪除得學生 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

 stu[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)特點 【1】特點:這個學生信息管理系統(tǒng)建立了學生信息得結(jié)構(gòu)體,實現(xià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:

。、No、 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\

 The 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);

 }

。鏴tch();

。 void DelStu(struct student stu[])

。

 system(”cls"); pp=stu;

 int delnum,flag=1;

  char ask;

。椋顃 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\

 The 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)最后將修改過后得學生信息保存了下來 5 5 、 調(diào)試情況

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

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

 文件未定義

 這就是建立學生信息文件

 添加學生信息并計算平均分與總分

 找不到要刪除得學生信息

  刪除了學號為 12 得學生信息

 修改學生信息

 新學生信息記錄

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

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

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

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

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

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