學生成績檔案管理系統

2021-10-21 15:10:18 字數 2184 閱讀 6417

• 學生資訊錄入,資訊包括學號、姓名、專業、四門課成績、總分、名次;

• 系統可對學生資訊瀏覽、增加、刪除和修改;

• 按學生成績確定名次及資訊輸出,雙向氣泡排序、希爾排序、快速排序、堆 排序。

• 要求可對學生資訊查詢,根據學號或姓名進行查詢;

• 資訊修改僅可修改四門課成績;

• 檔案訪問學生資訊

• 新增學生資訊(包括學號、姓名、專業、4門課成績……)

• 瀏覽學生資訊(對學生排序後資訊進行瀏覽)

• 刪除學生資訊(刪除指定學生的資訊,可給使用者選擇檢索指定項)

• 查詢學生資訊(查詢符合條件的某條記錄)

• 儲存學生資訊(儲存學生成績檔案資訊到文字檔案)

• 載入學生資訊(登入系統後將磁碟檔案中儲存的學生成績資訊讀

取到記憶體中)

本實驗採用dao模式進行編寫,由於暫時沒有學習資料庫,故新建乙個類來模擬儲存資料庫,此外,本人想法是將資料儲存於excel檔案中,並從excel檔案中讀取資料。

快速排序

/**

* 快速排序

* 遞迴

*/private

void

quicksort

(list

stuinfoslist,

int left,

int right)

int l = left;

int r = right;

//基準值,取中間

int key = stuinfoslist.

get(left)

.getsum()

;boolean flag=

true

;//交換容器

stuinfo student;

while

(l != r)

else

}else

else}}

quicksort

(stuinfoslist,left, r -1)

;quicksort

(stuinfoslist, l +

1, right)

;}

雙向氣泡排序
/**

* 雙向氣泡排序

*/private

void

doublebubblesort

(list

stuinfoslist)

} left++

;for

(int i = right; i >= left; i--)}

right--;}

}

堆排序
/**

* 堆排序

*/private

void

heapsort

(list

stuinfoslist)

}/**

* 堆調整

*/private

void

heapfity

(list

stuinfoslist,

int index,

int len)

else

if(lchild <= len)

else

if(rchild <= len)

//if

(stuinfoslist.

get(temp)

.getsum()

< stuinfoslist.

get(index)

.getsum()

)}/** * 建立小根堆

*/private

void

buildheap

(list

stuinfoslist)

}

希爾排序
/**

* 希爾排序

*/private

void

shellsort

(list

stuinfoslist)

step /=2;

}}/** * 希爾排序迴圈內使用的插入排序

*/private

void

insertsort

(list

stuinfoslist,

int step,

int start)

}}

學生成績管理系統

include include include define n 50 定義符號常量,代表學生人數最大值 int count 0 全域性變數,用於記錄陣列的當前位置 struct student 定義結構體型別,代表學生資訊 void input struct student arr 函式宣告,輸入...

學生成績管理系統

include include include include include include include include define null 0 define esc 0x001b 退出 define f1 0x3b00 檢視幫助資訊,呼叫helpmassage 函式 define f2 ...

學生成績管理系統

這是進入大學以來,第一次做的c語言課程設計,覺得挺有意義,把 貼上來,曬一下!學生成績管理系統 教師,管理員密碼 輸入學生的基本資訊 輸出學生的基本資訊 查詢學生的基本資訊 學生成績分析 排序 統計 退出 include include include include include include...