成績(jī)管理課程設(shè)計(jì)報(bào)告_第1頁
成績(jī)管理課程設(shè)計(jì)報(bào)告_第2頁
成績(jī)管理課程設(shè)計(jì)報(bào)告_第3頁
成績(jī)管理課程設(shè)計(jì)報(bào)告_第4頁
成績(jī)管理課程設(shè)計(jì)報(bào)告_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、課程設(shè)計(jì)報(bào)告課程設(shè)計(jì)題目:成績(jī)管理 學(xué)生姓名: xx 專 業(yè):xxx班 級(jí):xxx指導(dǎo)教師: xx 20xx年x月x日東華理工大學(xué)課程設(shè)計(jì)評(píng)分表學(xué)生姓名: xx 班級(jí): xxxx 學(xué)號(hào):xxxxx課程設(shè)計(jì)題目:成績(jī)管理項(xiàng)目?jī)?nèi)容滿分實(shí) 評(píng)選題能結(jié)合所學(xué)課程知識(shí)、有一定的能力訓(xùn)練。符合選題要求(5人一題)10工作量適中,難易度合理10能力水平能熟練應(yīng)用所學(xué)知識(shí),有一定查閱文獻(xiàn)及運(yùn)用文獻(xiàn)資料能力10理論依據(jù)充分,數(shù)據(jù)準(zhǔn)確,公式推導(dǎo)正確10能應(yīng)用計(jì)算機(jī)軟件進(jìn)行編程、資料搜集錄入、加工、排版、制圖等10能體現(xiàn)創(chuàng)造性思維,或有獨(dú)特見解10成果質(zhì)量總體設(shè)計(jì)正確、合理,各項(xiàng)技術(shù)指標(biāo)符合要求。10說明書綜述簡(jiǎn)練

2、完整,概念清楚、立論正確、技術(shù)用語準(zhǔn)確、結(jié)論嚴(yán)謹(jǐn)合理;分析處理科學(xué)、條理分明、語言流暢、結(jié)構(gòu)嚴(yán)謹(jǐn)、版面清晰10設(shè)計(jì)說明書欄目齊全、合理,符號(hào)統(tǒng)一、編號(hào)齊全。格式、繪圖、表格、插圖等規(guī)范準(zhǔn)確,符合國(guó)家標(biāo)準(zhǔn)10有一定篇幅,字符數(shù)不少于500010總 分100指導(dǎo)教師評(píng)語: 指導(dǎo)教師簽名: 年 月 日實(shí)驗(yàn)題目:成績(jī)管理1、 實(shí)驗(yàn)?zāi)康?.掌握線性表的創(chuàng)建及基本操作;2.掌握基本排序3.復(fù)習(xí)文件相關(guān)的操作(1)用順序結(jié)構(gòu)表示成績(jī)單,完成任務(wù)(1)(6),成績(jī)?yōu)榧案瘢唬?)用鏈表表示成績(jī)單,完成任務(wù)(1)(6),且軟件容錯(cuò)能力強(qiáng),成績(jī)?yōu)橹械取?、 實(shí)驗(yàn)內(nèi)容 問題描述:給出n個(gè)學(xué)生的考試成績(jī)表,成績(jī)表包括學(xué)

3、生的學(xué)號(hào)、姓名、考試成績(jī)(高等數(shù)學(xué)、英語、物理),設(shè)計(jì)一個(gè)簡(jiǎn)單的成績(jī)管理程序。基本要求:(1)建立成績(jī)表,能夠插入、刪除、修改學(xué)生的成績(jī)記錄;(2)按任一單科成績(jī)排序;(3) 計(jì)算每名學(xué)生的平均成績(jī);(4) 統(tǒng)計(jì)任一單科成績(jī)不及格的學(xué)生人數(shù), 輸出不及格人數(shù)及不及格的學(xué)生名單(5) 根據(jù)平均成績(jī)將成績(jī)表按由高到低的次序排列,統(tǒng)計(jì)每名學(xué)生在考試中獲得的名次,分?jǐn)?shù)相同的為同一名次,按名次輸出成績(jī)表。(6) 成績(jī)表保存在文件中, 可以從文件讀取數(shù)據(jù)。3、 實(shí)驗(yàn)設(shè)計(jì)1. 定義單鏈表存儲(chǔ)結(jié)構(gòu) typedef struct student char id12; char name20; int c1; i

4、nt c2; int c3; student *next;student;2. 建立成績(jī)表及其涉及的相關(guān)函數(shù)student *appendnode(student *head);/增加void dislink(student *head);/顯示student *insertnode(student *head);/插入student *delnode(student *head);/刪除student *alter(student *head);/修改 student *start(student *head);/初始賦值student *com(student *head);/排序stud

5、ent *readdata(student *head);/讀取數(shù)據(jù)void savedata(student *head);/存儲(chǔ)數(shù)據(jù)void mathcount(student *head);/統(tǒng)計(jì)高數(shù)不及格人數(shù)3. 具體程序代碼#include#include#includetypedef struct student char id12; char name20; int c1; int c2; int c3; student *next;student;student *appendnode(student *head);/增加void dislink(student *head);

6、/顯示student *insertnode(student *head);/插入student *delnode(student *head);/刪除student *alter(student *head);/修改 student *start(student *head);/初始賦值student *com(student *head);/冒泡排序student *readdata(student *head);/讀取數(shù)據(jù)void savedata(student *head);/存儲(chǔ)數(shù)據(jù)void mathcount(student *head);/統(tǒng)計(jì)高數(shù)不及格人數(shù)int main()

7、 int a; student *head=null; int k=1; head=readdata(head);/先讀文件 if (head=null)/如果不存在的話創(chuàng)建數(shù)據(jù) head=start(head); while(k) dislink(head);/數(shù)據(jù)多的話不必每次都顯示 printf(1 增加數(shù)據(jù)n); printf(2 插入數(shù)據(jù)n); printf(3 修改數(shù)據(jù)n); printf(4 刪除排序n); printf(5 排序數(shù)據(jù)n); printf(6 顯示數(shù)據(jù)n); printf(7 統(tǒng)計(jì)高數(shù)不及格人數(shù)n); printf(8 退出n); printf(選擇:); sca

8、nf( %d,&a); switch(a) case 1: head=appendnode(head); break; case 2: head=insertnode(head); break; case 3: head=alter(head); break; case 4: head=delnode(head); break; case 5: head=com(head); break; case 6: break; case 7: mathcount(head); break; case 8: k=0; break; default: printf(請(qǐng)輸入有效選擇!n); savedata

9、(head); return 0;student *start(student *head) student *p=null; student *pr=head; p=(student *)malloc(sizeof(student); head=p; pr=p; strcpy(pr-id,08002813); strcpy(pr-name,bener); pr-c1=98; pr-c2=99; pr-c3=95; p=(student *)malloc(sizeof(student); pr-next=p; pr=pr-next; strcpy(pr-id,08001303); strcpy

10、(pr-name,大雄); pr-c1=67; pr-c2=73; pr-c3=59; p=(student *)malloc(sizeof(student); pr-next=p; pr=pr-next; strcpy(pr-id,09001823); strcpy(pr-name,胖虎); pr-c1=64; pr-c2=69; pr-c3=75; p=(student *)malloc(sizeof(student); pr-next=p; pr=pr-next; strcpy(pr-id,08002818); strcpy(pr-name,靜香); pr-c1=95; pr-c2=91

11、; pr-c3=89;p=(student *)malloc(sizeof(student); pr-next=p; pr=pr-next; strcpy(pr-id,09004813); strcpy(pr-name,康夫); pr-c1=46; pr-c2=75; pr-c3=88;pr-next=null; return head;void dislink(student *head) student *p=head; int j=1; printf(序號(hào) 學(xué)號(hào) 名字 高數(shù) 英語 物理 平均分n); while(p!=null)printf(%3d%10s%10s%6d%6d%6d%8.

12、2fn,j,p-id,p-name,p-c1,p-c2,p-c3,(p-c1+p-c2+p-c3)/3.0); p=p-next; j+; student *appendnode(student *head) student *p=null; student *pr=head; char id12; char name20; int c1; int c2; int c3; p=(student *)malloc(sizeof(student); if(p=null) printf(no enough memory to alloc); exit(0); else if(head=null) h

13、ead=p; else while(pr-next!=null) pr=pr-next; pr-next=p; pr=p; printf(請(qǐng)輸入學(xué)號(hào):); scanf( %s,&id); printf(請(qǐng)輸入名字:); scanf( %s,&name); printf(請(qǐng)依次輸入高數(shù),英語,物理成績(jī):); scanf( %d%d%d,&c1,&c2,&c3); strcpy(pr-id,id); strcpy(pr-name,name); pr-c1=c1; pr-c2=c2; pr-c3=c3; pr-next=null; return head;void deletememory(stud

14、ent *head) student *p=head,*pr=null; while(p!=null) pr=p; p=p-next; student *delnode(student *head) student *p=head,*pr=head; int i,j; printf(刪除第幾個(gè)數(shù)據(jù)?); scanf( %d,&i); for(j=1;jnext; pr-next=p-next; free(p); return head;student *insertnode(student *head) student *pr=head,*p=head,*temp=null; int i,j;

15、 char id12; char name20; int c1; int c2; int c3; p=(student *)malloc(sizeof(student); printf(請(qǐng)輸入學(xué)號(hào):); scanf( %s,&id); printf(請(qǐng)輸入名字:); scanf( %s,&name); printf(請(qǐng)依次輸入高數(shù),英語,物理成績(jī):); scanf( %d%d%d,&c1,&c2,&c3); 3; p-next=null; strcpy(p-id,id); strcpy(p-name,name); p-c1=c1; p-c2=c2; p-c3=c3; printf(插入到第幾個(gè)

16、?); scanf( %d,&i); for(j=1;jnext; if(pr=head) p-next=head; head=p; else pr=temp; p-next=pr-next; pr-next=p; return head;student *com(student *head) student *pr=head,*p=head,temp1; int i=1,j,k; while(p-next!=null) p=p-next; i+; p=head; for(j=1;jnext; for(k=0;kc1+pr-c2+pr-c3)/3.0c1+p-c2+p-c3)/3.0) tem

17、p1=*pr; temp1.next=p-next; *pr=*p; *p=temp1; pr-next=p; p=p-next; pr=pr-next; p=head; pr=head; return head;student *alter(student *head)student *p=head; char c12;char id12;char name20;int c1,c2,c3;if(head=null)printf(鏈表為空,沒有要?jiǎng)h除的對(duì)象n);/break;printf(請(qǐng)輸入要修改的學(xué)號(hào)n);scanf(%s,&c);while(p!=null)&(strcmp(c,p-i

18、d)!=0)p=p-next;if(strcmp(c,p-id)=0) printf(請(qǐng)輸入修改后的學(xué)號(hào)n);scanf(%s,&id);printf(請(qǐng)輸入修改后的姓名n);scanf(%s,&name);printf(請(qǐng)依次輸入修改后的高數(shù),英語,物理成績(jī):);scanf( %d%d%d,&c1,&c2,&c3);strcpy(p-id,id);strcpy(p-name,name);p-c1=c1;p-c2=c2;p-c3=c3;else printf(沒找到!);return head;student *readdata(student *head)/讀取數(shù)據(jù) student *p=null; student *ptr=head; student temp; file *fp=fopen(std.data,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論