freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

學(xué)生成績管理系統(tǒng)---課程設(shè)計(jì)-全文預(yù)覽

2025-08-14 18:51 上一頁面

下一頁面
  

【正文】 p=0。 printf(yuw score:%d,p)。 printf(Math score:%d,p)。 printf(Name:%s,p)。 Disp(l)。 getchar()。先按輸入的學(xué)號查詢到該記錄,然后提示用戶修改學(xué)號之外的值,學(xué)號不能修改*/void Modify(Link l){ Node *p。 getchar()。 printf(\n=====delete success!\n)。 if(p) { r=l。 } else Nofind()。/*將p所指節(jié)點(diǎn)從鏈表中去除*/ free(p)。 p=Locate(l,findmess,num)。 printf( please choice[1,2]:)。 return。 char findmess[20]。 } else Wrong()。 printf(press any key to return)。 p=Locate(l,searchinput,name)。 getchar()。/*在l中查找學(xué)號為searchinput值的節(jié)點(diǎn),并返回節(jié)點(diǎn)的指針*/ if(p) /*若p!=NULL*/ { printheader()。 scanf(%d,amp。 return。 /*保存用戶輸入的查詢內(nèi)容*/ Node *p。 saveflag=1。 /*計(jì)算平均分*/ p=0。 /*輸入并檢驗(yàn)分?jǐn)?shù),分?jǐn)?shù)必須在0-100之間*/ p=numberinput(English Score[0100]:)。 /*返回主界面*/ } strcpy(p,num)。 } else {break。||ch==39。 scanf(%c,amp。 break。 /*格式化輸入學(xué)號并檢驗(yàn)*/ flag=0。 /*先打印出已有的學(xué)生信息*/ while(rnext!=NULL) r=rnext。 r=l。 /*進(jìn)行分?jǐn)?shù)校驗(yàn)*/ }while(t100 || t0)。 do{ printf(notice)。 /*輸入字符串*/ if(strlen(n)lens) printf(\n exceed the required length! \n)。 } } return 0。 r=rnext。 在單鏈表l中查找。 /*移動直下一個結(jié)點(diǎn)*/ printf(HEADER3)。 } printf(\n\n)。 p=lnext。}void Wrong() /*輸出按鍵錯誤信息*/{ printf(\n\n\n\n\n********Error:input has wrong! press any key to continue*********\n)。 printf(HEADER3)。 cprintf( * 9 display record 0 quit system *\n)。 cprintf( * 1 input record 2 delete record *\n)。 /*Node為node類型的結(jié)構(gòu)變量,*Link為node類型的指針變量*/void menu() /*主菜單*/{ system(cls)。 /*班級*/}student。 /*語文成績*/ int total。 /*姓名*/ int cgrade。更正后,程序正常運(yùn)行。因?yàn)檫@兩個功能對系統(tǒng)影響不大,故可以將這兩個函數(shù)刪掉,使程序正常運(yùn)行。13)Sort()函數(shù)原型:void Sort(Link l)Sort()函數(shù)用于在單鏈表l中完成利用插入排序算法實(shí)現(xiàn)單鏈表的按總分字段的降序排序。9)Del()函數(shù)原型:void Del(Link l)Del()函數(shù)用于先在單鏈表l中找到滿足條件的學(xué)生記錄的節(jié)點(diǎn),然后刪除該節(jié)點(diǎn)。6)Locate()函數(shù)原型:Node* Locate(Link l,char findmess[],char nameornum[])Locate()函數(shù)用于定位鏈表中符合要求的節(jié)點(diǎn),并返回指向該節(jié)點(diǎn)的指針。t用于保存輸入的字符串,因?yàn)槭且灾羔樞问絺鬟f的,所以t相當(dāng)于該函數(shù)的返回值。Node為node類型的結(jié)構(gòu)變量,*Link為node類型的指針變量。單鏈表node結(jié)構(gòu)體typedef struct node{struct student data。 //保存英語成績int total。 //保存學(xué)號 char name[15]。(3) 重復(fù)第(2)步,知道從待排序鏈表取出的節(jié)點(diǎn)的指針域?yàn)镹ULL,即此節(jié)點(diǎn)為鏈表的尾部節(jié)點(diǎn),排序完成該模塊的實(shí)現(xiàn)比較簡單,它主要通過循環(huán)讀取指針變量p所指的當(dāng)前節(jié)點(diǎn)的數(shù)據(jù)域中各字段的值,并對各個成績字段進(jìn)行逐個判斷的形式,完成單科成績最高分學(xué)生的查找和各科不及格人數(shù)的統(tǒng)計(jì)。(1) 新建一個單鏈表1,用來保存排序結(jié)果,其初始值為待排序單鏈表中的頭節(jié)點(diǎn)。qnext=i。第一步,輸入要刪除的學(xué)號或姓名,輸入后調(diào)用定位函數(shù)Locate()在單鏈表中逐個對節(jié)點(diǎn)數(shù)據(jù)域中的學(xué)號或姓名字段的值進(jìn)行比較,知道找到該學(xué)號或姓名的記錄,返回指向該學(xué)生記錄的節(jié)點(diǎn)指針;第二步,若找到該學(xué)生記錄,將該學(xué)生記錄所在節(jié)點(diǎn)的前驅(qū)節(jié)點(diǎn)的指針域指向目標(biāo)節(jié)點(diǎn)后的后繼節(jié)點(diǎn)。下面分別介紹這四個功能模塊。在查詢函數(shù)Qur(1)中,1為指向保存了學(xué)生成績信息的單鏈表的首地址的指針變量。這部分的操作較為簡單。最后,系統(tǒng)執(zhí)行推出成績管理系統(tǒng)操作。它先以可讀寫的方式打開數(shù)據(jù)文件,此文件默認(rèn)為“c:\student”,若干文件不存在,則新建此文件。輸出記錄模塊主要完成兩個任務(wù)。一般而言,系統(tǒng)進(jìn)行著修操作后,需要將修改的數(shù)據(jù)存入原數(shù)據(jù)文件。否則,返回一個值為NULL的空指針,并打印出未找到該學(xué)生記錄的信息。(2)查詢記錄模塊。輸入記錄模塊主要完成將數(shù)據(jù)存入單鏈表的工作中。通過本程序的訓(xùn)練,使讀者能對C語言的文件操作有一個更深刻的了解,掌握利用單鏈表存儲結(jié)構(gòu)實(shí)現(xiàn)對學(xué)生成績管理的原理,為進(jìn)一步開發(fā)出高質(zhì)量的信息管理系統(tǒng)打下堅(jiān)實(shí)的基礎(chǔ)。該報告同時含有源代碼的運(yùn)行結(jié)果以及調(diào)試和出錯分析。T用于保存輸入的字符串,因?yàn)槭且灾羔樞问絺鬟f的,所以t相當(dāng)于該函數(shù)的返回值。每一功能模塊中又包含一系列具體功能,如:從文件讀入或從鍵盤輸入學(xué)生的基本信息,按學(xué)號或者姓名查找已存在的記錄,對存在的記錄進(jìn)行修改、刪除、插入、排序,統(tǒng)計(jì)所有學(xué)生信息中的最高分、不及格人數(shù)等,基本上涵蓋了學(xué)生成績管理系統(tǒng)所應(yīng)該具備的基本操作。 設(shè)計(jì)題目:學(xué)生成績管理系統(tǒng)院系:電子工程系班級:電嵌Q0941實(shí)驗(yàn)人:趙婷婷學(xué)號:091602009 實(shí)驗(yàn)指導(dǎo)老師:李俊目錄一. 課程設(shè)計(jì)任務(wù)書3二. 內(nèi)容提要4三. 正文5四. 參考文獻(xiàn)35五. 課程設(shè)計(jì)體會35 嵌入式程序課程設(shè)計(jì)任務(wù)書一、題目:學(xué)生成績管理系統(tǒng)設(shè)計(jì)二、內(nèi)容與要求學(xué)生成績信息包括:學(xué)期,學(xué)號,班別,姓名,四門課程成績(語文、數(shù)學(xué)、英語和計(jì)算機(jī))等。其功能主要有五大板塊組成:輸入記錄模塊、查詢記錄模塊、更新記錄模塊、統(tǒng)計(jì)記錄模塊和輸出記錄模塊。2) stringinput( )函數(shù)原型:void stringinput(char *t,int lens,char *notice)該函數(shù)用于輸入字符串,并進(jìn)行字符串長度驗(yàn)證。整個分析過程可在后面內(nèi)容中詳細(xì)了解,這里僅列舉幾個提供說明。本程序中設(shè)計(jì)結(jié)構(gòu)體、單鏈表、文件等方面的知識。(1)輸入記錄模塊。當(dāng)從數(shù)據(jù)文件中讀入記錄時,它就是在以記錄為單位存儲的數(shù)據(jù)文件中,將記錄逐條復(fù)制到單鏈表中。若找到該學(xué)生的記錄,則返回指向該學(xué)生的記錄的指針。在此成績管理系統(tǒng)中,它實(shí)現(xiàn)了對學(xué)生記錄的修改、刪除、插入和排序操作。(5)輸出記錄模塊。 學(xué)生成績管理系統(tǒng) 輸出至屏幕輸出至文件各科最高分和不及格人數(shù)統(tǒng)計(jì)排序記錄按姓名查詢按學(xué)號查詢從鍵盤輸入從文件讀入插入記錄刪除記錄修改記錄更新記錄模塊統(tǒng)計(jì)記錄模塊查詢記錄模塊輸出記錄模塊輸入記錄模塊 三. 詳細(xì)設(shè)計(jì)()函數(shù)執(zhí)行流程 本成績管理系統(tǒng)執(zhí)行流程如圖所示。若輸入為0(即變量select=0),它會繼續(xù)判斷是否在對記錄進(jìn)行更新操作之后進(jìn)行了存盤操作,若未存盤,則全局變量saveflag=1,系統(tǒng)會提示用戶是否需要進(jìn)行存盤操作,用戶輸入Y或y,系統(tǒng)會進(jìn)行存盤操作。輸入記錄模塊主要實(shí)現(xiàn)將數(shù)據(jù)存入單鏈表中。查詢記錄模塊主要實(shí)現(xiàn)了在單鏈表中按學(xué)號或姓名查找滿足相關(guān)條件的學(xué)生記錄。因?yàn)閷W(xué)生記錄是以單鏈表的結(jié)構(gòu)形式存儲的,所以這些操作都在單鏈表中完成。2) 刪除記錄刪除記錄操作完成刪除制定學(xué)號或姓名的學(xué)生記錄,它也分兩步完成。圖中q為位置學(xué)號所在節(jié)點(diǎn)的指針變量,其中,p為q所指節(jié)點(diǎn)的后繼節(jié)點(diǎn)的指針變量,q—next=p,指針變量i指向新記錄所在的節(jié)點(diǎn),為插入節(jié)點(diǎn)i,依次執(zhí)行的操作為:inext=qnext。在單鏈表中,實(shí)現(xiàn)插入排序的基本步驟如下。否則,將取出的節(jié)點(diǎn)放在單鏈表1的尾部。7. 數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)學(xué)生成績信息結(jié)構(gòu)體typedef struct student {char num[10]。 //保存數(shù)學(xué)成績int egrade。 //保存名次}。 這里定義了一個單鏈表的結(jié)構(gòu),結(jié)構(gòu)標(biāo)記為node,data為student結(jié)構(gòu)類型的數(shù)據(jù),作為單鏈表結(jié)構(gòu)中的數(shù)據(jù)域,next為單鏈表中的指針域,用來存儲其直接后繼節(jié)點(diǎn)的地址。3)stringinput()函數(shù)原型:void stringinput(char *t,int lens, char *notice)stringinput()函數(shù)用于輸入字符串,并進(jìn)行字符串長度驗(yàn)證(長度lens)。5)Disp()函數(shù)原型:void Disp(Link l)Disp()函數(shù)用于顯示單鏈表l中存儲的學(xué)生記錄,內(nèi)容為student結(jié)構(gòu)中定義的內(nèi)容。8)Qur()函數(shù)原型:void Qur(Link l)Qur()函數(shù)用于先在單鏈表l中按學(xué)號或姓名查找滿足條件的記錄,并顯示出來。12)Tongji()函數(shù)原型:void Tongji(Link l)Tongji()函數(shù)用于在單鏈表l中完成學(xué)生記錄的統(tǒng)計(jì)工作,統(tǒng)計(jì)該班的總分第一名、單科第一名和各科不及格人數(shù)。打開隨書光盤,將光盤中的學(xué)生成績管理系統(tǒng)源代碼轉(zhuǎn)至運(yùn)行環(huán)境中,開始運(yùn)行測試,運(yùn)行過程
點(diǎn)擊復(fù)制文檔內(nèi)容
電大資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1