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

正文內(nèi)容

學(xué)生成績管理系統(tǒng)---課程設(shè)計(jì)(專業(yè)版)

2024-08-30 18:51上一頁面

下一頁面
  

【正文】 ave4=sum4/y。 Node *p。9) 排序記錄當(dāng)用戶輸入7并按enter鍵后,即可進(jìn)入記錄排序界面。 /*按鍵有誤,必須為數(shù)值09*/ } }}1) 主界面當(dāng)用戶剛進(jìn)入成績管理系統(tǒng)時(shí),其主界面如圖所示。 /*查詢學(xué)生記錄*/ case 4:Modify(l)。 scanf(%c,amp。 /*沒有申請成功*/ exit(0)。 /*關(guān)閉此文件*/}void main(){ Link l。/*以只寫方式打開二進(jìn)制文件*/ if(fp==NULL) /*打開文件失敗*/ { printf(\n=====open file error!\n)。 } /*指針移至總分比p所指的節(jié)點(diǎn)的總分小的節(jié)點(diǎn)位置*/ if(rrnext==NULL)/*若新鏈表ll中的所有節(jié)點(diǎn)的總分值都比p,就將p所指節(jié)點(diǎn)加入鏈表尾部*/ rrnext=s。 } ll=(Node*)malloc(sizeof(Node))。 printf(yuw 60:%d (ren)\n,countk)。} if(r60) {counte++。}/*統(tǒng)計(jì)該班的總分第一名和單科第一,和各科不及格人數(shù)*/ void Tongji(Link l){ Node *pm,*pe,*pc,*pt,*pk,*p1,*p2,*p3,*p4。 newinfo=numberinput(Math Score[0100]:)。 v=lnext。v=lnext。 p=(float)(p)。 printf(modify student recorder)。 free(p)。 if(sel==1) { stringinput(findmess,10,input the existing student number:)。 getchar()。 p=Locate(l,searchinput,num)。 /*將新建的結(jié)點(diǎn)加入鏈表尾部中*/ r=p。 else return。return menu):)。 /*將輸入的字符串拷貝到字符串t中*/}/*輸入分?jǐn)?shù),0=分?jǐn)?shù)=100)*/int numberinput(char *notice){ int t=0。 nameornum[]保存按什么查找。 printf(FORMAT,DATA)。 /*指針域*/}Node,*Link。回到源代碼,仔細(xì)觀察輸出模塊,將會(huì)發(fā)現(xiàn)Disp( )函數(shù)中調(diào)用了printdata( )函數(shù)用于輸出有效數(shù)據(jù),而printdata( )函數(shù)中引用了預(yù)處理中的DATA格式,而在宏定義DATA中egrade和cgrade的順序果然反了,至此檢查出錯(cuò)誤的根本。5)Disp()函數(shù)原型:void Disp(Link l)Disp()函數(shù)用于顯示單鏈表l中存儲(chǔ)的學(xué)生記錄,內(nèi)容為student結(jié)構(gòu)中定義的內(nèi)容。 //保存數(shù)學(xué)成績int egrade。圖中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)將數(shù)據(jù)存入單鏈表中。在此成績管理系統(tǒng)中,它實(shí)現(xiàn)了對學(xué)生記錄的修改、刪除、插入和排序操作。本程序中設(shè)計(jì)結(jié)構(gòu)體、單鏈表、文件等方面的知識(shí)。 設(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ì)體會(huì)35 嵌入式程序課程設(shè)計(jì)任務(wù)書一、題目:學(xué)生成績管理系統(tǒng)設(shè)計(jì)二、內(nèi)容與要求學(xué)生成績信息包括:學(xué)期,學(xué)號,班別,姓名,四門課程成績(語文、數(shù)學(xué)、英語和計(jì)算機(jī))等。通過本程序的訓(xùn)練,使讀者能對C語言的文件操作有一個(gè)更深刻的了解,掌握利用單鏈表存儲(chǔ)結(jié)構(gòu)實(shí)現(xiàn)對學(xué)生成績管理的原理,為進(jìn)一步開發(fā)出高質(zhì)量的信息管理系統(tǒng)打下堅(jiān)實(shí)的基礎(chǔ)。一般而言,系統(tǒng)進(jìn)行著修操作后,需要將修改的數(shù)據(jù)存入原數(shù)據(jù)文件。這部分的操作較為簡單。qnext=i。 //保存英語成績int total。6)Locate()函數(shù)原型:Node* Locate(Link l,char findmess[],char nameornum[])Locate()函數(shù)用于定位鏈表中符合要求的節(jié)點(diǎn),并返回指向該節(jié)點(diǎn)的指針。更正后,程序正常運(yùn)行。 /*Node為node類型的結(jié)構(gòu)變量,*Link為node類型的指針變量*/void menu() /*主菜單*/{ system(cls)。}void Wrong() /*輸出按鍵錯(cuò)誤信息*/{ printf(\n\n\n\n\n********Error:input has wrong! press any key to continue*********\n)。 在單鏈表l中查找。 do{ printf(notice)。 /*格式化輸入學(xué)號并檢驗(yàn)*/ flag=0。 } else {break。 saveflag=1。/*在l中查找學(xué)號為searchinput值的節(jié)點(diǎn),并返回節(jié)點(diǎn)的指針*/ if(p) /*若p!=NULL*/ { printheader()。 } else Wrong()。 p=Locate(l,findmess,num)。 printf(\n=====delete success!\n)。 Disp(l)。 p=0。 while(v) /*查詢該學(xué)號是否存在,flag=1表示該學(xué)號存在*/ { if(strcmp(v,s)==0) {flag=1。 while(v) { if(strcmp(v,num)==0) { printf(=====Sorry,the new number:39。 newinfo=numberinput(English Score[0100]:)。 /*用于指向分?jǐn)?shù)最高的節(jié)點(diǎn)*/ Node *r=lnext。p3=r。 printf(\n)。 /*用于創(chuàng)建新的節(jié)點(diǎn)*/ if(!ll) { printf(\n allocate memory failure )。 else /*否則將該節(jié)點(diǎn)插入至第一個(gè)總分字段比它小的節(jié)點(diǎn)的前面*/ { snext=rrnext。 getchar()。 /*定義鏈表*/ FILE *fp。 /*退出*/ } if(fread(p,sizeof(Node),1,fp)==1) /*一次從文件中讀取一條學(xué)生成績記錄*/ { pnext=NULL。ch)。break。此時(shí),系統(tǒng)已經(jīng)將“c:student”文件打開,若文件不為空,則將數(shù)據(jù)從文件中逐條記錄讀出,并寫入單鏈表中。其排序結(jié)果如圖所示,有排序前和排序后的學(xué)生記錄輸出結(jié)果。 int y=0,i=0。printf(“計(jì)算機(jī)平均分:%.1f”,ave1)。ave3=sum3/y。其部分代碼如下void statistics(Link l)/*在Tongji( )函數(shù)中新增加單科平均分和總分最低分*/{ floatsum,sum1=0,sum2=0,sum3=0,sum4=0,ave,ave1==0,ave3=0,ave4=0,max=0,min=0。其統(tǒng)計(jì)結(jié)果如圖所示,統(tǒng)計(jì)出了最高分及不及格人數(shù)。break。break。 printf(\n=====Whether save the modified record to file?(y/n):)。 if(!p) { printf( memory malloc failure!\n)。 } fclose(fp)。 fp=fopen(c:\\student,wb)。 rrnext=p) { rr=rrnext。 return 。 printf(English 60:%d (ren)\n,counte)。 printf(name:%s math score:%d 不及格\n,p2,p2)。 getchar()。 newinfo=numberinput(C language Score[0100]:)。} } } /*以下新記錄的輸入操作與Add()相同*/ stringinput(num,10,input new student Number:)。 flag=0。 p=p+p+p+p。 } system(cls)。 rnext=pnext。sel)。 } else Nofind()。 if(select==1) /*按學(xué)號查詢*/ { stringinput(searchinput,10,input the existing student number:)。 /*表明這是鏈表的尾部結(jié)點(diǎn)*/ rnext=p。) continue。039。 strcpy(t,n)。}/*************************************************************作用:用于定位鏈表中符合要求的節(jié)點(diǎn),并返回指向該節(jié)點(diǎn)的指針參數(shù):findmess[]保存要查找的具體內(nèi)容。 p=pp。 /*數(shù)據(jù)域*/ struct node *next。導(dǎo)致這種現(xiàn)象發(fā)生,其原因很有可能是源代碼中的輸出模塊中的egrade和cgrade順序反了。4)Numberinput()函數(shù)原型:int numberinput(char *notice)numberinput()函數(shù)用于輸入數(shù)值型數(shù)據(jù),notice用于保存printf()中輸出的提示信息,該函數(shù)返回用戶輸入的整型數(shù)據(jù)。 //保存C語言成績 int mgrade。首先,它要求用戶輸入某個(gè)學(xué)生的學(xué)號,新的記錄將插入在該學(xué)生記錄之后;然后,提示用戶輸入一條新的學(xué)生記錄的信息,這些信息保存在新節(jié)點(diǎn)的數(shù)據(jù)域中;最后,將該節(jié)點(diǎn)插入在指定位置學(xué)號之后。若選擇8
點(diǎn)擊復(fù)制文檔內(nèi)容
電大資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1