學生成績管理系統
本程式密碼:08605214
——開發學生成績資訊管理系統
密碼: 08605214
1、 需求分析
某大學因擴招需求,需要建立乙個「學生成績管理系統」,以取代人工管理。開發目的和功能如下:
(1)能進行成績及相關資料的錄入。
(2)具有修改功能。
(3)能按姓名、學號查詢任意一名同學的成績。
(4)能完成上表中各項統計。
(5)能將全班同學按從高分到低分的順序排序。
(6)能列印上述**。
一、資料需求
在調研的過程中,使用者提供了該系統所需的輸入、輸出單據。輸入單據包括學生成績單、基本資訊單等,輸出單據包括成績從高到低排序單、分數段人數單、相關資料統計單等,另外,在最終的列印輸出中還有兩張表:成績分析表和成績排序表。
學生成績表
考試基本資訊表
分數段人數表
相關資料統計表
二、功能需求
功能分析的任務,是弄清使用者對目標系統資料處理功能所提出的需求,根據系統目標和資料需求,本系統的功能需求可歸納為以下幾個方面。
1、資料錄入
錄入功能用於在各種手填單據中增加新的記錄,及時補充到系統將要執行的表中。這些單據包括學生成績表、基本資訊表等。
2、資料瀏覽和修改
能夠瀏覽所要得到的資料表單,並且有修改功能。這些表單包括學生成績表、基本資訊表等。
3、資料查詢
此查詢功能包括兩個:按姓名查詢和按學號查詢,能夠查詢到學生成績表中各個欄位的資訊,並顯示相關內容。
4、資料統計和管理
此功能能夠統計出各個分數段的人數和分數的相關資訊,包括全班學生的平均分數、平均離差、標準差、極差和合格率等。它從學生成績表中呼叫相關資料,把計算得到的資料放入分數段人數表和相關資料統計表。
平均分數= 平均離差=平均分數-期望值標準差s =
極差=最高分-最低分合格率=合格人數÷實考人數
5、**列印
此功能把上面得到的考試基本資訊、分數段人數、相關資料統計中的資料填入到最終的列印報表中,這些報表包括成績排序表和成績分析表。
考試情況統計分析表
2、資料庫設計
資料庫設計的任務是確定系統所需的資料庫。資料庫是表的集合,通常乙個系統只需乙個資料庫。資料庫設計可分為邏輯設計與物理設計兩個步驟,第一步確定資料庫所包含的表及字段,第二步是確定表的具體結果,即確定欄位的名稱、型別及寬度等。
一、邏輯設計
設計從分析資料入手,輸入資料中的某類相關資料可以歸納為乙個類。對需要同時呼叫的若干表,應使它們符合關聯要求。資料庫設計好後,可通過分析輸出資料來驗證起可用性,若發現有的輸出資料不能匯出,必須檢查問題,重新除錯。
本系統根據學生成績單、基本資訊單等單據的資料需求,從學生成績單、基本資訊單、成績從高到低排序單、分數段人數單、相關資料統計單中歸納出了包含五個表的資料庫。現將這些表列出如下:
(1)學生成績單:姓名、學號、平時成績、考試成績、最終成績。
(2)基本資訊單等:課程名稱、任課教師、上課班級、學生人數、考試時間、考試形式、命題形式、命題負責人、閱卷人、閱卷負責人、成績評價、評卷負責人、教研室主任、填表日期。
(3)成績從高到低排序單:姓名、學號、平時成績、考試成績、最終成績。
(4)分數段人數單:成績段、人數。
(5)相關資料統計單:,平均分數、平均離差、標準差、極差、合格率。
根據資料庫處理的需求,這些表需要和列印表關聯起來,如下圖所示。圖中矩形框表示表,需要關聯的錶用線段連線。
二、物理設計
下面列出了學生成績管理系統的部分的表結構,為了便於理解系統,同時也列出了表的部分記錄。
1、學生成績單(學生成績.dbf)
結構:學生成績單(姓名c(10)、學號c(10)、平時成績n(10)、考試成績n(10)、最終成績n(10))
記錄:學號姓名平時成績考試成績最終成績
08605201 小紅 918589
08605202 小明 888888
08605203 小雲 959394
2、分數段人數(分數段人數.dbf)
結構:分數段人數(成績段c(10)、人數n(10))
記錄:分數不及格 60-70 70-80 80-90 90-100
人數 1 1 1 3 3
3、相關資料統計表(相關資料統計表.dbf)
結構:相關資料統計表(平均分數n(10)、平均離差n(10)、標準差n(10)、極差n(10)、合格率n(10))
記錄:相關資料平均分數平均離差標準差極差合格率
數值 82.8889 22.8889 13.87599 47.0000 0.88889
出來上述的三個表外,還有基本資訊單(學基本資訊單.dbf)、成績從高到低排序單(成績從高到低排序單.dbf),其結構為課程名稱c(10)、任課教師c(10)、上課班級c(10)、學生人數n(10)、考試時間c(10)、考試形式c(10)、命題形式c(10)、命題負責人c(10)、閱卷人c(10)、閱卷負責人c(10)、成績評價c(10)、評卷負責人c(10)、教研室主任c(10)、填表日期c(10)。
3、應用成績設計
一、**設計
按照功能分類是總體設計中常用的方法,系統的總體結構可用層次圖(hierarchy chart,簡稱hc圖)來表示,此學生成績管理系統的hc可由下圖表示。自上而下進行分層:第一層是系統層,對應主程式;第二層為子系統層,起分類控制作用,但是當該層沒有下一層時也可直接用來表達功能;第三層為功能層;第四層為操作層。
下圖所示的學生成績管理系統有三層,系統功能分類如下:學生成績表和基本資訊表的新增功能歸入資料錄入一類,它們倆的瀏覽和修改功能歸入資料修改一類,資料查詢功能包括了按姓名查詢和按學號查詢,相關成績統計和成績排序歸入資料統計與管理一類,最後的**列印中有列印成績分析表和列印排序結果。圖中未畫出操作層,該層次的程式模組在模組設計中列出。
二、初始使用者介面設計
從**結構圖很容易列出應用程式的選單,由總體結構圖轉換到選單時,其對應的情況如下:系統層對應選單檔案,子系統層對應選單標題,功能層則對應子選單項。
下圖是「學生成績管理系統」下拉式選單的示意圖,說明如下:
(1)本系統使用選單作為輸入密碼後進入系統的初始介面,並設定乙個主檔案來呼叫選單程式。
(2)若改用表單為初始介面,可以在表單上設定若干按鈕來表示格仔系統的功能。對於圖中的選單項,下文將為它們進行設計與編碼。
三、模組設計與編碼
本小節將對「學生成績管理系統」的主要模組的設計與編寫作簡要說明。
1、主檔案(主檔案.prg)
選單檔名為「主選單」,並設定乙個主檔案來呼叫它。
主檔案的**編寫如下:
set talk off
clea all
set view to
public xm,xh
xm=space(8)
xh=space(8)
do form
keyb ''
modi wind screen titl '歡迎使用跑跑成績查詢系統'
clea
do 主選單.mpr
read event
quit
下圖為fm(封面)的示意圖:
上圖確定鍵的click事件的**為:
i=i+1
if "08605214"
else
if i<3 &&允許輸入三次
messagebox("密碼錯誤,請重新輸入!最多三次嘗試機會^_^哦")
"" &&清空表單
&&獲得焦點
else
messagebox("密碼錯,明天再試吧")
endif
endif
取消鍵的click事件的**為:
quit
2、主選單程式
按照選單圖示建立選單的內容,一層選單包括資料錄入、資料修改、資料查詢、資料統計與管理、資料列印和退出項。
(1)退出選單項的命令
clear events
(2)資料錄入項
此項有兩個子選單,分別是學生成績和基本資訊,用於輸入新學生的各項成績和增加最終列印報表中的基本資訊。
其中,學生成績子選單是過程,其**是:
close all
VFP實驗報告五
實驗報告 學院專業年級 姓名學號實驗室號 計算機號 實驗日期 年月日指導教師簽字成績 報告退發 訂正 重做 實驗五 程式設計基礎 驗證性,4學時 1 實驗目的 1 選擇結構程式設計 2 迴圈結構程式設計 3 過程和自定義函式的定義與呼叫 2 實驗內容 1.編寫一段利用messagebox 函式的程式...
《VFP》實驗報告2019
visual foxpro 實驗報告 2010 2011學年第二學期文科類 院系班級 學號姓名 教師資訊工程學院 2011 2 18 實驗一 vfp環境的熟悉 函式及表示式的使用 2學時 一 實驗目的 1 熟悉vfp整合環境,初步vfp整合環境的使用 2 掌握常量 變數及陣列的概念及定義。3 掌握函...
VFP多表操作實驗報告
第四次實驗 vfp資料庫的基本操作 掌握在不同工作區開啟不同的表檔案並顯示的方法。掌握利用命令建立表間臨時關聯 掌握使用資料庫工作期,建立表間臨時關聯 掌握實現表間的物理連線 掌握實現表間的資料更新的方法。1 分別利用命令和資料工作期兩種方法,分別在1,2,3號工作區開啟表檔案 學生.dbf,課程....