(完整版)軟件驗收報告資料_第1頁
(完整版)軟件驗收報告資料_第2頁
(完整版)軟件驗收報告資料_第3頁
(完整版)軟件驗收報告資料_第4頁
(完整版)軟件驗收報告資料_第5頁
已閱讀5頁,還剩22頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、學生管理系統(tǒng)軟件驗收報告目錄第一章 項目概述1.1 項目背景1.2 相關(guān)文檔1.3 參考資料1.4 部分系統(tǒng)截圖1.5 系統(tǒng)結(jié)構(gòu)圖第二章驗收定義2.1 驗收策略2.2 驗收依據(jù)2.3 驗收環(huán)境2.4 驗收標準2.4.1 項目驗收原則2.4.2 驗收流程2.4.3 系統(tǒng)功能標準2.5 驗收范圍2.6 驗收人員第三章 項目驗收內(nèi)容3.1 實施工作驗收3.2 軟件平臺驗收單3.3 功能模塊驗收單3.4 項目文檔驗收單3.5 運行結(jié)果驗收第四章驗收結(jié)論第五章交付物,單文檔提交清單源碼提交清單附件:程序流程圖第一章項目概述學生信息管理系統(tǒng)(Student Information ManagemenSys

2、tem),以下簡稱 SIMS 是針對學校人事處的大量業(yè)務處理工作而開發(fā)的管理軟件,是典型的管理信息系統(tǒng)(ManagemenUnformation System)。它是一個教育單位不可缺少的部分 ,它的內(nèi)容對 于學校的決策者和管理者來說都至關(guān)重要,它能夠為用戶提供充足的信息和快捷的查詢 手段。能有效的幫助學校和老師掌握學生的情況,為學生提供成績跟課程方面的查 詢。在傳統(tǒng)模式下利用人工進行學生信息管理,存在著較多的缺點,如:效率底,保 密性差,時間一長將產(chǎn)生大量的文件和數(shù)據(jù),更不便于查找,更新,維護等。諸如這 些情況,令學校管理者對學生的信息管理帶來了很大困難,嚴重影響了教育工作者的 工作效率。隨

3、著科學技術(shù)的不斷提高,計算機科學日漸成熟,使用日趨成熟的計算機技 術(shù)來代替?zhèn)鹘y(tǒng)的人工模式,來實現(xiàn)學生信息的現(xiàn)代化管理,其強大的功能已為人們深 刻認識,它已進入人類社會的各個領(lǐng)域并發(fā)揮著越來越重要的作用。作為計算機應用的一部分 , 使用計算機對學生信息進行管理, 具有著手工管理所無法比擬的優(yōu)點。這些優(yōu)點能夠極大地提高學生信息管理的效率, 也是學校的科學化、正規(guī)化管理的重要條件。用計算機制作的學校信息管理系統(tǒng)還可以通過功能強大的互聯(lián)網(wǎng)及時的向?qū)W生的家長傳遞該生在校的最新成績,有助于學校與家長的信息互動,為更好地把握學校的教育方針一定的促進作用。因此,開發(fā)這樣一套管理軟件成為很有必要的事情。1.1

4、項目背景隨著信息技術(shù)在管理上越來越深入而廣泛的應用,管理信息系統(tǒng)的實施在技術(shù)上已逐步成熟。管理信息系統(tǒng)是一個不斷發(fā)展的新型學科,任何一個單位要生存要發(fā)展,要高效率地把內(nèi)部活動有機地組織起來,就必須建立與自身特點相適應的管理信息系統(tǒng)。目前信息處理技術(shù)的飛速發(fā)展, 基于計算機網(wǎng)絡(luò)的信息處理已成為人們?nèi)粘9ぷ?學習和生活必備系統(tǒng)?在 Internet 飛速發(fā)展的今天, 互聯(lián)網(wǎng)已成為人們快速獲取, 發(fā)布和傳遞信息的重要渠道, 它已成為社會生活的一部分?學生信息處理的電腦化?網(wǎng)絡(luò)化,是實現(xiàn)學校管理現(xiàn)代化和信息化的重要內(nèi)容, 也是方便用戶快捷查詢相關(guān)充足信息的重要工具?與傳統(tǒng)學生信息處理模式相比, 基于網(wǎng)

5、絡(luò)的學生管理系統(tǒng)具有無可比擬的優(yōu)越性?因此開發(fā)一套有關(guān)學校的信息管理系統(tǒng)不僅能大大提高工作效率而且還能給師生的工作學習帶來極大的便利。1.2 相關(guān)文檔1學生管理系統(tǒng)軟件測試方案2學生管理系統(tǒng)軟件測試用例1.3 參考資料軟件測試從入門到精通軟測之魂:核心測試設(shè)計精解軟件測試與測試技術(shù)1.4 部分系統(tǒng)截圖第二章驗收定義2.1 驗收策略由開發(fā)方提供被驗收內(nèi)容、驗收文檔,由監(jiān)理公司與用戶進行評審,在評審無誤 的情況下,確認通過驗收。2.2 驗收依據(jù)軟件測試驗收準則2.3 驗收環(huán)境學生管理系統(tǒng)軟件實際運行的生產(chǎn)環(huán)境為驗收環(huán)境。硬件平臺計算機軟件平臺Window操作系統(tǒng): window xp、window

6、7、window82.4 驗收標準2.4.1 項目驗收原則1、審查提供驗收的各類文檔的正確性、完整性和統(tǒng)一性,審查文檔是否齊全、合理;2、審查項目功能是否達到了合同規(guī)定的要求;3、審查項目有關(guān)服務指標是否達到了合同的要求;4、審查項目投資以及實施進度的情況;對項目的技術(shù)水平做出評價,并得出項目的驗收結(jié)論。2.4.2 驗收流程本項目的驗收采取項目驗收流程的方式進行驗收。具體流程如下圖所示。葉發(fā)萬與監(jiān)埋公司制定驗收流程1F驗收流程用尸確認L-:=二二_用尸例隊th仁煙xir二1'f一一_ -'L -Ir開發(fā)方提供驗收內(nèi)容列表、驗收文檔1F監(jiān)理公司、客戶對驗收內(nèi)容、驗收文檔進行確認F

7、1二2二二二,驗收丙容、驗收文檔外,否通過?二=- F項目驗收、結(jié)束項目驗收流程否則將進行修改,以進行再2.4.3 系統(tǒng)功能標準嚴重程度描述A學生信息管理系統(tǒng)由于出現(xiàn)問題不能繼續(xù)運轉(zhuǎn)(崩潰) 學生信息管理系統(tǒng)的數(shù)據(jù)出現(xiàn)錯誤。B某項業(yè)務無法進行。學生信息管理系統(tǒng)產(chǎn)生數(shù)據(jù)錯誤。C學生信息管理系統(tǒng)中某一操作不能繼續(xù)運轉(zhuǎn)或錯誤,但不 影響業(yè)務的進行。(有替代辦法)學生信息管理系統(tǒng)打印的憑證或流水不符合需求所提出的 標準。D其他學生信息管理系統(tǒng)在某種狀態(tài)下產(chǎn)生的錯誤,不影響 正常功能。如果各模塊驗收測試結(jié)果如下表所述則視為驗收合格,次驗收評審嚴重程度關(guān)系發(fā)生個數(shù)A=0B< =102.5 驗收范圍用

8、戶以及監(jiān)理方進行驗收確認。驗收確認包括以下兩方面確認內(nèi)容:1 .參照驗收標準確認合同所涉及的功能以及項目組的實施工作是否完成;2 .抽取客戶端進行測試,確定系統(tǒng)能夠穩(wěn)定運行。2.6驗收人員單位人員職責/任務聯(lián)系方式/Email備注哈師大學生張紫娜組長第三章項目驗收內(nèi)容3.1 實施工作驗收工作階段工作內(nèi)容工作是否完成需求調(diào)研通過與用戶的溝通,根據(jù)項目實際情 況編寫提交需求說明書、概要 設(shè)計、詳細設(shè)計。完成 口未完成系統(tǒng)開發(fā)根據(jù)概要設(shè)計內(nèi)容,完成詳細 設(shè)計并根據(jù)詳細設(shè)計開發(fā)系統(tǒng) 和測試。每周提交項目進度及情況報 告、測試報告。完成 口未完成系統(tǒng)安裝安裝產(chǎn)品,對系統(tǒng)進行部署。完成 口未完成用戶培訓編

9、寫用戶使用手冊,對用戶進行使用 培訓。完成 口未完成系統(tǒng)運行跟蹤監(jiān)控系統(tǒng)運行。對使用中發(fā)現(xiàn)的 問題進行記錄和評估,在不影響系統(tǒng) 結(jié)構(gòu)的情況卜對發(fā)現(xiàn)的問題進行修完成 口未完成正。3.2 軟件平臺驗收單驗收人:張紫娜驗收時間:序 號軟件類型軟件名稱驗收結(jié)果備注1系統(tǒng)軟件學生管理系統(tǒng)完成3.3 功能模塊驗收單序 號功能模塊驗收內(nèi)容合同要求驗收結(jié)果1登錄驗證能否正常登陸必須實現(xiàn)合格2密碼模塊能否修改密碼必須實現(xiàn)合格3學生模塊正常實現(xiàn)添加修改功 能可以肩差錯合格4課程模塊正常實現(xiàn)添加修改功 能必須實現(xiàn)合格5成績模塊正常實現(xiàn)添加修改功 能必須實現(xiàn)合格6退出模塊正常退出系統(tǒng)必須實現(xiàn)合格3.4 項目文檔驗收單

10、序 號文檔名稱用途驗收結(jié)果備注1軟件需求分析分析軟件的需求,為后續(xù)的工作合格2軟件測試用例對以實現(xiàn)的軟件進行測試合格3.5 運行結(jié)果驗收系統(tǒng)運行內(nèi)容是否符合要求a.軟件登錄符合b.軟件測試符合C.軟件查詢符合一d.軟件修改符合e.軟件退出符合第四章驗收結(jié)論經(jīng)過嚴格的測試本軟件達到要求標準,符合驗收要求第五章交付物清單文檔提交清單1學生管理系統(tǒng)軟件測試方案2學生管理系統(tǒng)軟件測試用例源碼提交清單源程序清單(僅給出核心代碼部分)typedef char bool;#define FILEPATH"c:stuinfo.dat”#define INFOPATH"c:test.txt&

11、quot;#define MAXSPACECOUNT10/系統(tǒng)所記錄的最大冗余塊數(shù)#define MAXSUBCOUNT20系統(tǒng)所允許存儲的最多科目數(shù)#define RANDSTUCOUNT100/系統(tǒng)將自動產(chǎn)生的學生個數(shù)#define RANDSUBCOUNT20/系統(tǒng)將自動產(chǎn)生的科目個數(shù)#define BUFSIZE20字符緩沖區(qū)大小#define SHOWMAX6/屏幕最大顯示的科目數(shù)#define TRUE1#define FALSE0#define READ0x81#define WRITE0x82#define SEARCH SCHID0x83/通過學生的學號進行搜索#define

12、 SEARCH_NAME0x85#define SEARCH_SUB0x86#define SHOW_PRIV0x87#define SHOW_PERMARK0x89#define SHOW_ALLMARK0x90#define SORT_DECLINE0x92#define SORT_INCLINE0x93#define ALPHAWORD0x94#define NUMBERWORD0x95#define ADDSUB0x96#define EDITSUB0x97#define BIGNUMBER0x0ffffff#define LONGSIZEsizeof(long)#define INT

13、SIZEsizeof(int)#define LINKSIZEsizeof(link)#define STUINFOSIZEsizeof(stuinfo)#define SUBINFOSIZEsizeof(subinfo)#define TCHINFOSIZEsizeof(tchinfo)#define SUBMARKSIZE/通過學生的姓名進行搜索/通過學科的名稱進行搜索/顯示單個學生的個人信息/顯示單個學生的個人成績/顯示所有學生的某科成績/以降序排列/以升序排列/以字母構(gòu)成的字符串(用于隨機產(chǎn)生學生的姓名/以數(shù)字構(gòu)成的字符串(用于隨機產(chǎn)生學號/科目編輯模式為添加/科目編輯模式為修改/系統(tǒng)

14、延遲采用的循環(huán)中的大數(shù)sizeof(submark)#define FILEINFOSIZE#define MYSTUSIZE#define DATASEEKsizeof(fileinfo)sizeof(mystu)(FILEINFOSIZE+LONGSIZE)#define DATATRANS(STUINFOSIZE+LONGSIZE)#define SETERR(S)printf(S);return FALSE;/顯示出錯信息并返回#define NEW(I)(I*)malloc(sizeof(I)/開辟新的內(nèi)存空間typedef struct _submarkinfobool flag;

15、/flag=0 表該塊無效int sub_id;/科目的id 號submark,*psubmark;/科目成績信息typedef struct _stucharstu_name20; /學生姓名charstu_schid20; /學生學號int stu_sex;/學生性別0=man 1=womancharstu_major20; / 學生專業(yè)和班級(電子 0606)mystu,*pmystu;/學生個人信息typedef struct _stuinfobool flag;/flag=0 表該生作廢int stu_sysid;/學生id 號/系統(tǒng)將為每個學生產(chǎn)生唯一的ID 號mystustu_p

16、rivacy;/學生個人信息longstu_seek;/在文件中的地址int stu_markcount;/已有的成績數(shù)doublestu_avemark;/學生加權(quán)平均分submark stu_markMAXSUBCOUNT;/ 學生成績數(shù)組stuinfo,*pstuinfo;/學生信息(包括個人信息和系統(tǒng)信息 typedef struct _subinfo/flag=0 表該塊無效/科目的id 號/科目開課的學期bool flag;int sub_id;int sub_term;charsub_name20; / 科目名稱subinfo,*psubinfo;/科目信息 typedef st

17、ruct _fileinfo /已注冊的學生人數(shù)/最大學生數(shù), 用于產(chǎn)生id/文件冗余塊數(shù)int stucount;int countmax;int spacecount;long seekMAXSPACECOUNT;/ 文件冗余塊在文件中的地址int subcount;/已注冊的科目的個數(shù)subinfo subMAXSUBCOUNT;/ 科目信息數(shù)組fileinfo,*pfileinfo;/學生信息文件頭 typedef struct _linkdouble mark;long stuseek;struct _link* next;link,*plink;/該結(jié)構(gòu)體用于產(chǎn)生鏈表/鏈表用于對成

18、績排序之用核心功能函數(shù):/本函數(shù)設(shè)置系統(tǒng)錯誤,并終止程序void seterr(char*err)memset(void*)myerr,0,errnosize);int n=strlen(err);if(n>errnosize-1)n=errnosize;memcpy(myerr,err,n);printf("nn%snn",err);exit(0);/*本函數(shù)用于清理所有全局變量包括文件指針和全局結(jié)構(gòu)體指針*/void freeparam()if(fp)fclose(fp);fp=NULL;if(myfileinfo)free(myfileinfo);myfilei

19、nfo=NULL;if(mystuinfo)free(mystuinfo);mystuinfo=NULL;/本函數(shù)用于對文件進行操作,將常用的文件操作集于一身void fcntl(long seek,int cntlmode,void *pdata,int size)if(!fp)fp=fopen(FILEPATH,"rb+");if(!fp)initfile();rewind(fp);fseek(fp,seek,SEEK_SET);if(!pdata)return;if(!size)seterr("fcntl:parameter not matched"

20、;);switch(cntlmode)case READ:fread(pdata,size,1,fp);break;case WRITE:fwrite(pdata,size,1,fp);break;default:seterr("fcntl:cntlmode invalid");/初始化數(shù)據(jù)庫void initfile()if(!fp)fp=fopen(FILEPATH,"wb+");if(!myfileinfo)myfileinfo=NEW(fileinfo);memset(myfileinfo,0,FILEINFOSIZE);myfileinfo-&

21、gt;seek0=DATASEEK;int i=0;for(;i<MAXSUBCOUNT;i+)myfileinfo->subi.sub_id=i+1;fcntl(0,WRITE,myfileinfo,FILEINFOSIZE);/添加學生的核心函數(shù)void addstu(pmystu newstuinfo)if(!newstuinfo)seterr("addstu:newstuinfo null");if(search(newstuinfo->stu_schid,SEARCH_SCHID)seterr("addstu:database schi

22、d collision");if(!myfileinfo)myfileinfo=NEW(fileinfo);fcntl(0,READ,myfileinfo,FILEINFOSIZE);int spacecount=myfileinfo->spacecount;if(spacecount>=MAXSPACECOUNT)seterr("addstu:parameter invalid");long seek=myfileinfo->seekspacecount;if(spacecount)myfileinfo->seekspacecount=0

23、;myfileinfo->spacecount-;else myfileinfo->seekspacecount+=DATATRANS;if(!mystuinfo)mystuinfo=NEW(stuinfo);memset(mystuinfo,0,STUINFOSIZE);memcpy(&(mystuinfo->stu_privacy),newstuinfo,MYSTUSIZE);mystuinfo->stu_seek=seek;mystuinfo->flag=1;int i;mystuinfo->stu_sysid=myfileinfo->c

24、ountmax+1;for(i=0;i<MAXSUBCOUNT;i+)mystuinfo->stu_marki.sub_id=i+1;fcntl(seek,WRITE,mystuinfo,STUINFOSIZE);myfileinfo->stucount+;myfileinfo->countmax+;fcntl(0,WRITE,myfileinfo,FILEINFOSIZE);/刪除學生的核心函數(shù)void delstu(long delstuseek)if(!delstuseek)seterr("delstu:parameter zero");if(

25、!myfileinfo)myfileinfo=NEW(fileinfo);fcntl(0,READ,myfileinfo,FILEINFOSIZE);if(!mystuinfo)mystuinfo=NEW(stuinfo);memset(mystuinfo,0,STUINFOSIZE);fcntl(delstuseek,READ,mystuinfo,STUINFOSIZE);if(!mystuinfo->flag)seterr("delstu:parameter invalid");mystuinfo->flag=0;fcntl(delstuseek,WRITE

26、,mystuinfo,STUINFOSIZE);myfileinfo->stucount-;myfileinfo->spacecount+;int count=myfileinfo->spacecount;if(count<MAXSPACECOUNT)myfileinfo->seekcount=delstuseek;else myfileinfo->spacecount-;fcntl(0,WRITE,myfileinfo,FILEINFOSIZE);/編輯一個已存在學生的核心函數(shù)void editstu(long editstuseek,pmystu tem

27、pstu)if(!tempstu)seterr("editstu:parameter null");if(!mystuinfo)mystuinfo=NEW(stuinfo);memset(mystuinfo,0,STUINFOSIZE);fcntl(editstuseek,READ,mystuinfo,STUINFOSIZE);if(!mystuinfo->flag)seterr("editstu:editstu invalid");plink linkhead=search(tempstu->stu_schid,SEARCH_SCHID);

28、if(linkhead&&linkhead->data-editstuseek)seterr("editstu:database schid collision");memcpy(&mystuinfo->stu_privacy,tempstu,MYSTUSIZE);fcntl(editstuseek,WRITE,mystuinfo,STUINFOSIZE);/添加新的學科的核心函數(shù) void addsub(psubinfo newsub)if(!newsub)seterr("addsub:parameter null"

29、);if(newsub->sub_term<1|newsub->sub_term>8) seterr("addsub:parameter invalid");if(newsub->sub_rate<0.5|newsub->sub_rate>6) seterr("addsub:parameter invalid");if(search(newsub->sub_name,SEARCH_SUB) seterr("addsub:database sub collision");if(!my

30、fileinfo)myfileinfo=NEW(fileinfo);fcntl(0,READ,myfileinfo,FILEINFOSIZE);int subcount=myfileinfo->subcount;if(subcount>=MAXSUBCOUNT)seterr("addsub:subject full");psubinfo psubtemp=myfileinfo->sub;newsub->flag=1;int i;for(i=0;i<MAXSUBCOUNT;i+,psubtemp+)if(!psubtemp->flag)ne

31、wsub->sub_id=psubtemp->sub_id;memcpy(psubtemp,newsub,SUBINFOSIZE);break;if(i>=MAXSUBCOUNT)seterr("addsub:subject all in use");myfileinfo->subcount+;fcntl(0,WRITE,myfileinfo,FILEINFOSIZE);/刪除一個已經(jīng)存在學科的核心函數(shù)void delsub(int subid)if(subid<1|subid>MAXSUBCOUNT)seterr("delsu

32、b:subid invalid");if(!myfileinfo)myfileinfo=NEW(fileinfo);fcntl(0,READ,myfileinfo,FILEINFOSIZE);if(myfileinfo->subcount<=0)seterr("delsub:subcount zero");psubinfo subtemp=myfileinfo->sub+subid-1;if(!subtemp->flag)seterr("delsub:flag invalid");subtemp->flag=0;m

33、yfileinfo->subcount-;fcntl(0,WRITE,myfileinfo,FILEINFOSIZE);if(!mystuinfo)mystuinfo=NEW(stuinfo);long seek=DATASEEK;int i;psubmark marktemp=NULL;for(i=0;i<myfileinfo->stucount;i+,seek+=DATATRANS) fcntl(seek,READ,mystuinfo,STUINFOSIZE);if(!mystuinfo->flag)i-;continue;marktemp=mystuinfo-&g

34、t;stu_mark+subid-1;if(marktemp->flag)memset(marktemp,0,SUBMARKSIZE);mystuinfo->stu_markcount-;else continue;fcntl(seek,WRITE,mystuinfo,STUINFOSIZE);makeavemark(seek);/編輯一個已經(jīng)存在的學科的核心函數(shù)void editsub(psubinfo newsub)if(!newsub)seterr("editsub:newsub null");if(!newsub->flag)seterr(&quo

35、t;editsub:newsub invalid");int subid=newsub->sub_id;if(subid<1|subid>MAXSUBCOUNT)seterr("editsub:subid invalid");int term=newsub->sub_term;if(term<1|term>8)seterr("editsub:subterm invalid");double rate=newsub->sub_rate;if(rate<0.5|rate>6)seterr(&qu

36、ot;editsub:subrate invalid");int size=strlen(newsub->sub_name);if(size>=20)newsub->sub_name19=0;if(!myfileinfo)myfileinfo=NEW(fileinfo);fcntl(0,READ,myfileinfo,FILEINFOSIZE);plink linkhead=search(newsub->sub_name,SEARCH_SUB);if(linkhead&&linkhead->next)seterr("editsu

37、b:search invalid");if(linkhead&&linkhead->data-subid)seterr("editsub:database sub collision");newsub->flag=1;psubinfo subtemp=myfileinfo->sub+subid-1; memcpy(subtemp,newsub,SUBINFOSIZE);fcntl(0,WRITE,myfileinfo,FILEINFOSIZE);if(!mystuinfo)mystuinfo=NEW(stuinfo);int co

38、unt=myfileinfo->stucount;int i;long seek=DATASEEK;for(i=0;i<count;i+,seek+=DATATRANS)fcntl(seek,READ,mystuinfo,STUINFOSIZE);if(!mystuinfo->flag)i-;continue; makeavemark(seek);/編輯某學生某科目的核心函數(shù)void editmark(psubmark newmark,long stuseek)if(!newmark|!stuseek)seterr("addmark:parameter null&q

39、uot;);int subid=newmark->sub_id;if(subid<-1|subid>MAXSUBCOUNT|!subid)seterr("editmark:subid invalid");double mark=newmark->sub_mark;if(mark<0|mark>100)seterr("editmark:submark invalid");if(!mystuinfo)mystuinfo=NEW(stuinfo);memset(mystuinfo,0,STUINFOSIZE);fcntl(s

40、tuseek,READ,mystuinfo,STUINFOSIZE);if(!mystuinfo->flag)seterr("editmark:student invalid");psubmark marktemp=mystuinfo->stu_mark+subid-1;int flag1=marktemp->flag,flag2=newmark->flag;if(!flag1&&!flag2)seterr("editmark:markflag invalid");memcpy(marktemp,newmark,S

41、UBMARKSIZE);if(!flag1&&flag2)mystuinfo->stu_markcount+;if(flag1&&!flag2)mystuinfo->stu_markcount-;fcntl(stuseek,WRITE,mystuinfo,STUINFOSIZE);makeavemark(stuseek);/計算某學生的加權(quán)分數(shù)的核心函數(shù)void makeavemark(long stuseek)if(!stuseek)seterr("makeavemark:parameter null");if(!mystuin

42、fo)mystuinfo=NEW(stuinfo);memset(mystuinfo,0,STUINFOSIZE);fcntl(stuseek,READ,mystuinfo,STUINFOSIZE);if(!mystuinfo->flag)seterr("makeavemark:parameter invalid");if(!myfileinfo)myfileinfo=NEW(fileinfo);fcntl(0,READ,myfileinfo,FILEINFOSIZE);int subcount=myfileinfo->subcount;if(!subcount

43、|!mystuinfo->stu_markcount)mystuinfo->stu_avemark=0;fcntl(mystuinfo->stu_seek,WRITE,mystuinfo,STUINFOSIZE); return;psubinfo subtemp=myfileinfo->sub;psubmark marktemp=mystuinfo->stu_mark;int i;double marksum=0.0,rate,ratesum=0.0;for(i=0;i<subcount;i+,subtemp+,marktemp+)if(!subtemp->flag)i-;continue;if(!marktemp->flag)continue;rate=subtemp-

溫馨提示

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

評論

0/150

提交評論