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

正文內(nèi)容

學(xué)生成績(jī)管理系統(tǒng)---課程設(shè)計(jì)(存儲(chǔ)版)

  

【正文】 ntc)。 printf(The highest student by C score name:%s totoal score:%d\n,pc,pc)。 printf(\n=====Not student record!\n)。 Disp(l)。 while(rrnext!=NULL amp。 /*ll中存儲(chǔ)是的已排序的鏈表的頭指針*/ p=lnext。 Node *p。 count++。 printf(the current link is empty,no student record is saved!\n)。 /*保存文件中的記錄條數(shù)(或結(jié)點(diǎn)個(gè)數(shù))*/ Node *p,*r。 exit(0)。 } } fclose(fp)。select)。Y39。break。break。 /*顯示學(xué)生記錄*/ default: Wrong()。其輸入記錄過程如圖所示,這里輸入了三條學(xué)生記錄,當(dāng)用戶輸入0的學(xué)號(hào)時(shí),它會(huì)結(jié)束輸入過程,返回到主菜單界面。插入過程如圖所示,這里在學(xué)號(hào)為01的記錄后面插入了一條學(xué)號(hào)為02的記錄。首先,當(dāng)我把源代碼修改正確使之能夠正常運(yùn)行時(shí),當(dāng)意料之中的運(yùn)行結(jié)果出現(xiàn)在眼前的屏幕上時(shí),我感到很有成就感。現(xiàn)在將部分新增功能的思路及代碼描述如下: 在Tongji( )函數(shù)中,將將整形變量countc,countm,counte和county換成指針,用以記錄不及格學(xué)生的地址,打印時(shí),按記錄的地址找出不及格學(xué)生的名單。ave=sum/4。}ave1=sum1/y。printf(“總分最高分:%.1f”,max)。printf(“英語(yǔ)平均分:%.1f”,ave3)。if(maxsum) max=sum。 if(l==NULL){ printf(“沒有任何學(xué)生資料!”); return(l)。最后,讓我有些遺憾的是沒能在規(guī)定時(shí)間內(nèi)完成任務(wù)中的新功能。這里有3條記錄已經(jīng)存儲(chǔ)至磁盤數(shù)據(jù)文件中。其修改過程如圖所示,將學(xué)號(hào)04的記錄的C語(yǔ)言成績(jī)修改成了90分。當(dāng)輸入為零時(shí),退出此管理系統(tǒng)。Disp(l)。break。break。y39。 printf(\n Please Enter your choice(0~9):)。 r=p。 fp=fopen(C:\\student,ab+)。 /*保存選擇結(jié)果變量*/ char ch。 saveflag=0。 } p=lnext。 printf(\n =====sort plete!\n)。 } p=pnext。 /*填數(shù)據(jù)域*/ snext=NULL。 /*返回主界面*/ } llnext=NULL。 int i=0。 printf(The highest student by English score name:%s totoal score:%d\n,pe,pe)。 r=rnext。} if(r60) {county++。p1=r。 /*保存四門成績(jī)中不及格的人數(shù)*/ if(!r) { system(cls)。 break。 newinfo=newinfo+newinfo+newinfo+newinfo。 if(!newinfo) { printf(\n allocate memory failure )。 is existing !\n,num)。||ch==39。} v=vnext。 v=lnext。 Disp(l)。 printf(English score:%d,p)。 /*輸入并檢驗(yàn)該學(xué)號(hào)*/ p=Locate(l,findmess,num)。 if(!lnext) { system(cls)。 saveflag=1。 } else if(sel==2) /*先按姓名查詢到該記錄所在的節(jié)點(diǎn)*/ { stringinput(findmess,15,input the existing student name)。 while(rnext!=p) r=rnext。 Disp(l)。 }/*刪除學(xué)生記錄:先找到保存該學(xué)生記錄的節(jié)點(diǎn),然后刪除該節(jié)點(diǎn)*/void Del(Link l){ int sel。 printdata(p)。 printf(END)。 printf(\n =====1 Search by number =====2 Search by name\n)。}void Qur(Link l) /*按學(xué)號(hào)或姓名,查詢學(xué)生記錄*/{ int select。 /*輸入并檢驗(yàn)分?jǐn)?shù),分?jǐn)?shù)必須在0100之間*/ p=p+p+p+p。 /*申請(qǐng)內(nèi)存空間*/ if(!p) { printf(\n allocate memory failure )。 if(ch==39。} s=lnext。 system(cls)。t)。 do{ printf(notice)。 if(strcmp(nameornum,num)==0) /*按學(xué)號(hào)查詢*/ { r=lnext。 /*輸出表格頭部*/ while(p) /*逐條輸出鏈表中存儲(chǔ)的學(xué)生信息*/ { printdata(p)。}void Nofind() /*輸出未查找此學(xué)生的信息*/{ printf(\n=====Not find this student!\n)。}void printheader() /*格式化輸出表頭*/{ printf(HEADER1)。 Grade Management System \n)。 /*平均分*/ int mingci。 /*是否需要存盤的標(biāo)志變量*/typedef struct student /*標(biāo)記為student*/{ char num[10]。15)主函數(shù)main()整個(gè)成績(jī)管理系統(tǒng)控制部分。7)Add()函數(shù)原型:void Add(Link l)Qur()函數(shù)用于在單鏈表l中增加學(xué)生記錄的節(jié)點(diǎn)。2)printdata()函數(shù)原型:void printdata(Node *pp)printdata()函數(shù)用于以表格形式顯示學(xué)生記錄時(shí),打印輸出單鏈表pp中的學(xué)生信息。 //保存平均分int mingci。當(dāng)把記錄輸出值屏幕時(shí),調(diào)用void Disp(Link l)函數(shù),將單鏈表1中存儲(chǔ)的學(xué)生記錄信息以表格的形式在屏幕上打印出來。針對(duì)單鏈表結(jié)構(gòu)的特點(diǎn),我們用插入排序算法實(shí)現(xiàn)按總分的從高到低對(duì)學(xué)生記錄進(jìn)行排序,排序完成之后,即可按順序給名次字段賦值。第一步,輸入要修改的學(xué)號(hào),輸入后調(diào)用定位函數(shù)Locate()在單鏈表中逐個(gè)對(duì)節(jié)點(diǎn)數(shù)據(jù)域中學(xué)好字段的值進(jìn)行比較,直到找到該學(xué)好的學(xué)生記錄;第二步,若找到該學(xué)生記錄,修改除學(xué)號(hào)之外的各字段的值,并將存盤標(biāo)記變量saveflag置1,表示已經(jīng)對(duì)記錄進(jìn)行了修改,但還未執(zhí)行存盤操作。若該文件中沒有數(shù)據(jù),系統(tǒng)會(huì)提示單鏈表為空,沒有任何學(xué)生記錄可操作,此時(shí),用戶應(yīng)選擇1,調(diào)用Add(1)函數(shù),進(jìn)行學(xué)生記錄的輸入,即完成在單鏈表1中添加節(jié)點(diǎn)的操作。 在判斷鍵值時(shí),有效的輸入為0至9之間的任意數(shù)值,其他輸入都視為錯(cuò)誤按鍵。統(tǒng)計(jì)記錄模塊主要完成對(duì)個(gè)門功課最高分和不及格人數(shù)的統(tǒng)計(jì)。在此成績(jī)管理系統(tǒng)中,用戶可以按照學(xué)生的學(xué)號(hào)獲姓名在單鏈表中進(jìn)行查找。其功能模塊圖如下所示。4) Add( )函數(shù)原型:void Add(link l)該函數(shù)用于在單鏈表l中增加學(xué)生記錄的節(jié)點(diǎn)。該設(shè)計(jì)報(bào)告圍繞學(xué)生成績(jī)管理系統(tǒng)的源代碼,展開一系列豐富的功能介紹和操作細(xì)節(jié)。為了使廣大讀者對(duì)該系統(tǒng)有更好的了解,此報(bào)告還列舉出了程序代碼中的一系列具體函數(shù)以及它的作用及功能。由于時(shí)間、經(jīng)驗(yàn)及水平的原因,報(bào)告中難免有不足和錯(cuò)誤之處,敬請(qǐng)批評(píng)指正。在此成績(jī)管理系統(tǒng)中,記錄可以從以二進(jìn)制形式存儲(chǔ)的數(shù)據(jù)文件中讀入,也可從鍵盤逐個(gè)輸入學(xué)生記錄。(3)更新記錄模塊。第一,它實(shí)現(xiàn)對(duì)學(xué)生記錄的存盤操作,即將單鏈表中的各節(jié)點(diǎn)中存儲(chǔ)的學(xué)生記錄信息寫入數(shù)據(jù)文件中。開始以可讀寫的方式打開一 個(gè)數(shù)據(jù)文件調(diào)用menu()菜單函數(shù)將此文件的內(nèi)容讀出,并存入一個(gè)新的單鏈表中進(jìn)入while()循環(huán)輸入【0~9】中的一個(gè)數(shù)值,選擇相應(yīng)操作輸入是否為0?是否已對(duì)修改進(jìn)行存盤? 是否 是 判斷鍵值,調(diào)用響應(yīng)函數(shù),完成相應(yīng)功能 否調(diào)用Save()函數(shù),進(jìn)行寫文件操作 結(jié)束若選擇1,則調(diào)用Add()函數(shù),執(zhí)行增加學(xué)生記錄操作;若選擇2,則調(diào)用Del()函數(shù),執(zhí)行刪除學(xué)生記錄操作;若選擇3,則調(diào)用Qur()函數(shù),執(zhí)行查詢學(xué)生記錄操作;若選擇4,則調(diào)用Modify(0函數(shù),執(zhí)行修改學(xué)生記錄操作;若選擇5,則調(diào)用Insert()函數(shù),執(zhí)行插入學(xué)生記錄操作;若選擇6,則調(diào)用Tongji()函數(shù),執(zhí)行統(tǒng)計(jì)學(xué)生記錄操作;若選擇7,則調(diào)用Sort()函數(shù),執(zhí)行按降序排序?qū)W生記錄的操作。為了遵循模塊化編程的原則,我們將在單鏈表中進(jìn)行的指針定位操作設(shè)計(jì)成了一個(gè)單獨(dú)的函數(shù)Node* Locate(Link 1,char findmess[],char nameornum[]),參數(shù)findmess[]保存到要查找的具體內(nèi)容,nameornum[]保存要查找的字段(值為字符串類型的num或者name),若找到該記錄,則返回指向該節(jié)點(diǎn)的指針;否則,返回一個(gè)空指針。3) 插入記錄插入學(xué)生記錄操作完成在制定學(xué)號(hào)的隨后位置插入新的學(xué)生記錄。(2) 從待排序鏈表中取出下一個(gè)節(jié)點(diǎn),將其總分字段值與單鏈表1中的各節(jié)點(diǎn)中總分字段的值進(jìn)行比較,知道在鏈表1中找到總分小于它的節(jié)點(diǎn)。 //保存姓名 int cgrade。 struct node *next。notice用于保存printf()中輸出的提示信息。10)Modify()函數(shù)原型:void Modify(Link l)Modify()函數(shù)用于在單鏈表l中修改學(xué)生記錄。,按代碼中的輸入順序?qū)δ硞€(gè)學(xué)生輸入計(jì)算機(jī)成績(jī)98,輸入英語(yǔ)成績(jī)86,打印結(jié)果卻為:計(jì)算機(jī)成績(jī)86,英語(yǔ)成績(jī)98。 /*C語(yǔ)言成績(jī)*/ int mgrade。/*定義每條記錄或結(jié)點(diǎn)的數(shù)據(jù)結(jié)構(gòu),標(biāo)記為:node*/typedef struct node{ struct student data。 cprintf( * 3 search record 4 modify record *\n)。}void printdata(Node *pp) /*格式化輸出表中數(shù)據(jù)*/{ Node* p。 /*l存儲(chǔ)的是單鏈表中頭結(jié)點(diǎn)的指針,該頭結(jié)點(diǎn)沒有存儲(chǔ)學(xué)生信息,指針域指向的后繼結(jié)點(diǎn)才有學(xué)生信息*/ if(!p) /*p==NULL,NUll在stdlib中定義為0*/ { printf(\n=====Not student record!\n)。 } getchar()。 } } else if(strcmp(nameornum,name)
點(diǎn)擊復(fù)制文檔內(nèi)容
電大資料相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1