VFP實習報告

2021-12-21 14:55:17 字數 4103 閱讀 8043

學生成績管理系統

本程式密碼: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,課程....