




已閱讀5頁,還剩14頁未讀, 繼續(xù)免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
#include#include#define NULL 0#define LTS sizeof(struct mark)struct mark unsigned long int num; char name20; int clas ; float math; float English; float computer; float total; float ver; struct mark *next; ;struct mark *D_insertsort(struct mark *head) int flag=0,a,b; struct mark *f,*g,*q,*r,*s,*t; f=head; q=f-next; f-next=NULL; t=f; printf(按數(shù)學請按1,按英語請按2,按微機請按3,按總成績請按4:n); scanf(%d,&a); switch(a) case 1: for(q;q!=NULL;) r=q; q=q-next; r-next=NULL; if(f-mathmath) r-next=f; f=r; t=f; else if(f-mathr-math) while(f!=NULL) if(f-next!=NULL) s=f-next; if (s-mathmath) r-next=f-next; f-next=r; break; else f=f-next; else if(f-next=NULL) f-next=r; break; break; case 2: for(q;q!=NULL;) r=q; q=q-next; r-next=NULL; if(f-EnglishEnglish) r-next=f; f=r; t=f; else if(f-Englishr-English) while(f!=NULL) if(f-next!=NULL) s=f-next; if (s-EnglishEnglish) r-next=f-next; f-next=r; break; else f=f-next; else if(f-next=NULL) f-next=r; break; break; case 3: for(q;q!=NULL;) r=q; q=q-next; r-next=NULL; if(f-computercomputer) r-next=f; f=r; t=f; else if(f-computerr-computer) while(f!=NULL) if(f-next!=NULL) s=f-next; if (s-computercomputer) r-next=f-next; f-next=r; break; else f=f-next; else if(f-next=NULL) f-next=r; break; break; case 4: for(q;q!=NULL;) r=q; q=q-next; r-next=NULL; if(f-totaltotal) r-next=f; f=r; t=f; else if(f-totalr-total) while(f!=NULL) if(f-next!=NULL) s=f-next; if (s-totaltotal) r-next=f-next; f-next=r; break; else f=f-next; else if(f-next=NULL) f-next=r; break; break; default: printf(*你的輸入有錯,請重新輸入n); return(t); struct mark *S_insertsort(struct mark *head) int flag=0,a,b; struct mark *f,*g,*q,*r,*s,*t; f=head; q=f-next; f-next=NULL; t=f; printf(按數(shù)學請按1,按英語請按2,按微機請按3,按總成績請按4:n); scanf(%d,&a); switch(a) case 1: for(q;q!=NULL;) r=q; q=q-next; r-next=NULL; if(f-math=r-math) r-next=f; f=r; t=f; else if(f-mathmath) while(f!=NULL) if(f-next!=NULL) s=f-next; if (s-math=r-math) r-next=f-next; f-next=r; break; else f=f-next; else if(f-next=NULL) f-next=r; break; case 2: for(q;q!=NULL;) r=q; q=q-next; r-next=NULL; if(f-English=r-English) r-next=f; f=r; t=f; else if(f-EnglishEnglish) while(f!=NULL) if(f-next!=NULL) s=f-next; if (s-English=r-English) r-next=f-next; f-next=r; break; else f=f-next; else if(f-next=NULL) f-next=r; break; case 3: for(q;q!=NULL;) r=q; q=q-next; r-next=NULL; if(f-computer=r-computer) r-next=f; f=r; t=f; else if(f-computercomputer) while(f!=NULL) if(f-next!=NULL) s=f-next; if (s-computer=r-computer) r-next=f-next; f-next=r; break; else f=f-next; else if(f-next=NULL) f-next=r; break; case 4: for(q;q!=NULL;) r=q; q=q-next; r-next=NULL; if(f-total=r-total) r-next=f; f=r; t=f; else if(f-totaltotal) while(f!=NULL) if(f-next!=NULL) s=f-next; if (s-total=r-total) r-next=f-next; f-next=r; break; else f=f-next; else if(f-next=NULL) f-next=r; break; head=t; return(t); void began()/*開始界面*/ printf(tn); printf(t 學生成績管理系統(tǒng) n); printf(tn); printf(t (0) 學 籍 錄 入 (1) 成 績 錄 入n); printf(tn); printf(t (2) 顯 示 全 部 學 生 成績 (3) 刪 除 學 生 成 績n); printf(tn); printf(t (4) 顯 示 某 學 生 成 績 (5) 顯示指定分數(shù)段學生成績n); printf(tn); printf(t (6) 顯示班級人數(shù)及平均成績 (7) 成 績 排 序 并 顯 示 n); printf(tn);void main() struct mark *head; struct mark *Lp,*mp,*up,*rp,*rup; struct mark *zp,*jp; struct mark *sp,*hp; struct mark *xp,*ip,*ap; struct mark *fp,*ep; struct mark *bp; struct mark *pp; int n,i,k,b,flag,min,max; float s; head=NULL; began();for (i=0;inum); printf(*請輸入學生名字n); scanf(%s,&Lp-name); printf(*請輸入學生班級n); scanf(%d,&Lp-clas); Lp-computer=NULL; Lp-English=NULL; Lp-math=NULL; Lp-total=NULL; Lp-ver=NULL; if(head=NULL) head=Lp; mp=Lp; mp-next=NULL; else Lp-next=NULL; mp-next=Lp; mp=Lp; printf(*學籍輸入成功n); began(); break; case 1: up=(struct mark *)malloc(LTS); printf(*請輸入學生學號n); scanf(%lu,&up-num); if(head=NULL) printf(*還沒有學生學籍n); else rp=(struct mark *)malloc(LTS); rp=head; while(rp!=NULL) if(rp-num=up-num) printf(*請輸入數(shù)學成績n); scanf(%f,&rp-math); printf(*請輸入英語成績n); scanf(%f,&rp-English); printf(*請輸入微機成績n); scanf(%f,&rp-computer); rp-total=(rp-math+rp-English+rp-computer); rp-ver=rp-total/3; flag=1; break; else rp=rp-next; flag=0; if(flag=1) printf(*學生成績錄入成功n); else if (flag=0) printf(*沒有該學生的學籍n); began(); break; case 2: xp=head; if(xp!=NULL) do printf(*學號 %lun,xp-num); printf(*姓名 %sn,xp-name); printf(*班級 %dn,xp-clas); if(xp-math=NULL) printf(*還沒錄入該學生成績); else if(xp-math!=NULL) printf(*數(shù)學成績 %.2fn,xp-math); printf(*英語成績 %.2fn,xp-English); printf(*微機成績 %.2fn,xp-computer); printf(*總成績 %.2fn,xp-total); printf(*平均成績 %.2fn,xp-ver); printf(*n ); printf(*n ); xp=xp-next; while(xp!=NULL); else printf(*還沒存入數(shù)據(jù)n); began(); break; case 3: hp=(struct mark *)malloc(LTS); printf(*請輸入學生學號n); scanf(%lu,&hp-num); if(head=NULL) printf(*還沒有學生學籍n); else sp=(struct mark *)malloc(LTS); sp=head; while(sp!=NULL) if(sp-num=hp-num) sp-computer=NULL; sp-English=NULL; sp-math=NULL; sp-total=NULL; sp-ver=NULL; flag=1; break; else sp=sp-next; flag=0; if(flag=1) printf(*學生成績刪除成功n); else if (flag=0) printf(*沒有該學生的學籍n); began(); break; case 4: ip=(struct mark *)malloc(LTS); printf(*請輸入學生學號n); scanf(%lu,&ip-num); if(head=NULL) printf(*還沒有學生學籍n); else ap=(struct mark *)malloc(LTS); ap=head; while(ap!=NULL) if(ap-num=ip-num&ap-math!=NULL) printf(*學號 %lun,ap-num); printf(*姓名 %sn,ap-name); printf(*班級 %dn,ap-clas); printf(*數(shù)學成績 %.2fn,ap-math); printf(*英語成績 %.2fn,ap-English); printf(*微機成績 %.2fn,ap-computer); printf(*總成績 %.2fn,ap-total); printf(*平均成績 %.2fn,ap-ver); flag=1; break; else ap=ap-next; flag=0; if(flag=1) printf(*學生成績輸出成功n); else if (flag=0) printf(*沒有該學生的學籍或者還沒輸入該學生成績n); began(); break; case 5: printf(*請輸入最低總分:); scanf(%d,&min); printf(*請輸入最高總分:); scanf(%d,&max); fp=(struct mark *)malloc(LTS); fp=head; while(fp!=NULL) if(fp-total=min&fp-totalnum); printf(*姓名 %sn,fp-name); printf(*班級 %dn,fp-clas); printf(*數(shù)學成績 %.2fn,fp-math); printf(*英語成績 %.2fn,fp-English); printf(*微機成績 %.2fn,fp-computer); printf(*總成績 %.2fn,fp-total); printf(*平均成績 %.2fn,fp-ver); fp=fp-next; began(); break;case 6: printf(*請輸入班級號); scanf(%d,&b); s=0; i=0; bp=(struct mark *)malloc(LTS); bp=head
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 知識題庫-農(nóng)民豐收節(jié)知識競賽試題及答案
- 2025年公司安全培訓考試試題及答案(網(wǎng)校專用)
- 地理+昆一中2025屆高三聯(lián)考試卷及答案(九)
- 地理第六章測試卷及答案
- 大連六年級下冊試卷及答案
- 護理信息系統(tǒng)質(zhì)控計劃開發(fā)
- 新能源企業(yè)綠色發(fā)展戰(zhàn)略計劃
- 高一班級社會實踐活動計劃
- 小學二年級秋季學期教學計劃
- 車隊包車合同協(xié)議書模板
- 2025年重慶西南大學附中高考數(shù)學模擬試卷試題(含答案詳解)
- 2025四川巴中市國有資本運營集團有限公司招聘17人筆試參考題庫附帶答案詳解
- 2025神農(nóng)科技集團有限公司第一批校園招聘17人(山西)筆試參考題庫附帶答案詳解
- 南充2025年南充市公安局第一次招聘27名交通輔警筆試歷年參考題庫附帶答案詳解
- 收購芒果協(xié)議書模板
- 農(nóng)業(yè)科技與裝備應用知識考點
- 雙語客運值班員紅十字藥箱課件
- 黑龍江省地方標準黑龍江省建設工程施工操作技術規(guī)程市政橋梁工程
- 前廳服務與管理課件 處理客人投訴
- 幼兒園注意飲食衛(wèi)生教育
- 科技公司員工道德與倫理培訓計劃
評論
0/150
提交評論