資源簡介
這是一個用c++寫的學生管理系統(tǒng):
一、程序的主要功能
程序分為四個模塊:
1.建立哈希表:有三個功能
(1)插入一個學生信息;
(2)刪除一個學生信息;
(3)修改一個學生信息。
2.查詢模塊:有四個功能
(1)查詢全部學生信息;
(2)按學號查詢學生信息;
(3)按姓名查詢學生信息;
(4)按性別查詢學生信息。
3.排序模塊:有四個功能
(1)按學號排序;
(2)按年齡排序;
(3)按各科成績排序;
(4)按總成績排序。
4.統(tǒng)計模塊:有三個功能
(1)統(tǒng)計男女生人數(shù);
(2)統(tǒng)計每個人的平均成績;
(3)統(tǒng)計各科平均成績。
二、用戶操作方法
一共有七個源文件,一個頭文件,六個cpp文件。
將它們打開編譯后即可運行。
運行后按照提示操作即能實現(xiàn)預期的各種功能。
或者雙擊debug圖標。

代碼片段和文件信息
//*****************************************************************
//*?程序作者:張鑫
//*?學????號:040630420
//*?完成日期:2007年5月24日
//*?課程設計:學生成績管理系統(tǒng)?
//*****************************************************************
???#include?
???#include?
???#include?
???#include?“HashTable.h“
???void?studentManage(HashTable?&);
???void?seek(HashTable?&);
???void?testInput(char?&?char?&);
???void?copy(StudentInfo?&?StudentInfo?&);
???void?writeFile(HashTable?&);
???void?primary(HashTable?&);
???void?statistics(HashTable?&);
???void?sequence(HashTable?&);
????void?main()
{
HashTable????H;
H.count=0;
fstream??????file;
StudentInfo??student;
H.elem=(StudentInfo*)malloc(11*sizeof(StudentInfo));
int???k?t?j;
char??n[10]?No[9];??????
file.open(“student.txt“?ios::in|ios::out|ios::binary);
while(file.read((char?*)&student?sizeof(student)))
{
k=0;
strcpy(nstudent.num);
for(t=8j=1;?t>4;?t--)
{
k+=int(n[t]-48)*j;
j=j*10;
}
k%=11;
? while(H.elem[k].mark==1?&&?strcmp(H.elem[k].numNo)!=0?&&?k<11)
{?
k++;
????k%=11;
}
if(k!=11)
{
H.count++;
copy(H.elem[k]?student);
H.elem[k].score=(ScoreInfo*)malloc(sizeof(ScoreInfo));
????????????????file.read((char?*)&(*H.elem[k].score)?sizeof(ScoreInfo));
H.elem[k].score->next=(ScoreInfo*)malloc(sizeof(ScoreInfo));
????????????????file.read((char?*)&(*H.elem[k].score->next)?sizeof(ScoreInfo));
}?
}
file.close();
primary(H);
}
????void?primary(HashTable?&H)
{
char?inPut?i=‘5‘;?
system(“cls“);
cout<<“\t\t\t學生成績管理系統(tǒng)\n“
<<“\t\t\t?????主菜單\n\n“
<<“\t\t\t??1.?成績管理“< <<“\t\t\t??2.?成績查詢?“< <<“\t\t\t??3.?學生統(tǒng)計“< <<“\t\t\t??4.?排序“< <<“\t\t\t??5.?退出系統(tǒng)“<
????????testInput(inPut?i);
????????switch(inPut)
{
????????????case?1?:????studentManage(H);??
????????????????break;
????? case?2?:????seek(H);???
????????????????break;
????case?3?:????statistics(H);???
????????????????break;
????case?4?:????sequence(H);???
????????????????break;
????case?5?:????system(“cls“);
writeFile(H);
cout< <<“\t\t\t??謝謝您使用本系統(tǒng)!“
< ????????? exit(0);???
}
??}
??void?writeFile(HashTable?&H)
??{
??fstream?file1;
??int?k;
??file1.open(“student.txt“?ios::out|ios::binary);
??for(k=0;?k<11;?k++)
??{
??if(H.elem[k].mark==1)
??{
??file1.write((char?*)&H.elem[k]?sizeof(H.elem[k]));
??file1.write((char?*)&(*H.elem[k].score)?sizeof(ScoreInfo));
??file1.write((char?*)&(*H.elem[k].score->next)?sizeof(ScoreInfo));
??file1.flush();
??}
??}
??file1.close();
??}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????429??2007-12-27?13:40??學生成績管理系統(tǒng)\HashTable.h
?????文件???????2853??2007-12-29?11:06??學生成績管理系統(tǒng)\主函數(shù).cpp
?????文件???????5666??2007-12-29?11:06??學生成績管理系統(tǒng)\查詢.cpp
?????文件???????7119??2007-12-29?11:08??學生成績管理系統(tǒng)\排序.cpp
?????文件???????5527??2007-12-29?11:46??學生成績管理系統(tǒng)\成績管理.cpp
?????文件???????6757??2007-12-29?11:45??學生成績管理系統(tǒng)\函數(shù).cpp
?????文件???????2810??2007-12-29?11:08??學生成績管理系統(tǒng)\統(tǒng)計.cpp
?????目錄??????????0??2007-12-29?12:50??學生成績管理系統(tǒng)
-----------?---------??----------?-----??----
????????????????31161????????????????????8
- 上一篇:純C語言實現(xiàn)工資管理系統(tǒng)
- 下一篇:c語言矩陣運算程序
評論
共有 條評論