資源簡介
這是本人做的一個基于DOS窗口的學生管理系統,使用的是VS2012的平臺,該系統經過海量的數據測試,基本把所有的bug都給排除掉了,該系統可以提供給初學者進行學習使用。

代碼片段和文件信息
#include?
#include?
#include?“linker.h“
extern?const?char?fileFullPath[40];
extern?Student*?head;
extern?int?maxId;
//函數功能:從文件中讀取學生數據到鏈表
int?readFromFile()
{
FILE?*fp;
int?nodeNumber?=?0;
if((fp?=?fopen(fileFullPath?“rb“))?==?NULL){//讀方式打開二進制文件,允許讀數據,文件必須存在。
printf(“無法打開數據文件!?\n“);
return?-1;
}
printf(“正在從文件中讀取學生數據到鏈表,請稍候......?\n“);
do{
Student?*?newStudent?=?(Student?*)malloc(sizeof(Student));
if(fread(newStudent?sizeof(Student)?1?fp)?==?1)?{//讀取數據成功!
newStudent->next?=?NULL; //新結點作為尾結點插入
if(maxId?id)?maxId?=?newStudent->id;
//將新結點添加到鏈表尾部
addNode(&head?newStudent);//注意:多次調用addNode方式—代碼效率高,運行效率低(每次要從前往后遍歷整個鏈表,大家可以自己寫效率更高的代碼:指針總是指向鏈表尾結點,從文件中讀一個結點,就插入鏈表尾。)
nodeNumber++; ???????//讀取結點數加1
}else{
if(feof(fp)){//讀取數據完畢
fclose(fp);
printf(“讀取結束,共讀取了%d名學生數據!?\n“?nodeNumber);
system(“pause“);
system(“cls“);
return?1;
}
}
}while(1);
fclose(fp);
}
//函數功能:將學生鏈表結點數據寫入到文件,便于數據長久保存
void?saveToFile()?
{
FILE?*fp;
int?nodeNumber?=?0;
Student?*p?=?head;
if((fp?=?fopen(fileFullPath?“wb+“))?==?NULL){//w+?打開可讀寫文件,若文件存在則文件長度清為零,即該文件內容會消失。若文件不存在則建立該文件。
printf(“無法打開數據文件!?\n“);
return?;
}
printf(“正在將鏈表中的數據保存到文件,請稍候......?\n“);
while(p!=NULL){
if(fwrite(p?sizeof(Student)?1?fp)?==?1)
nodeNumber++;
else
printf(“學號為:%d,姓名為:%s?的學生數據保存文件失敗?\n“p->idp->name);
p?=?p->next;
}
fclose(fp);
printf(“保存結束,共保存了%d名學生數據!?\n“?nodeNumber);
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2017-03-18?18:07??學生管理系統\
?????目錄???????????0??2017-02-28?15:02??學生管理系統\Debug\
?????文件???????38912??2017-02-28?15:03??學生管理系統\Debug\學生管理系統.exe
?????文件??????269560??2017-02-28?15:03??學生管理系統\Debug\學生管理系統.ilk
?????文件??????470016??2017-02-28?15:03??學生管理系統\Debug\學生管理系統.pdb
?????文件?????????162??2017-03-17?10:50??學生管理系統\~$課程綜合設計.docx
?????目錄???????????0??2017-03-18?17:13??學生管理系統\學生管理系統\
?????目錄???????????0??2017-03-09?17:00??學生管理系統\學生管理系統\Debug\
?????文件???????18900??2017-03-09?17:00??學生管理系統\學生管理系統\Debug\CL.read.1.tlog
?????文件???????13234??2017-03-09?17:00??學生管理系統\學生管理系統\Debug\CL.write.1.tlog
?????文件????????7414??2017-03-09?17:00??學生管理系統\學生管理系統\Debug\cl.command.1.tlog
?????文件????????9401??2017-03-01?17:13??學生管理系統\學生管理系統\Debug\fileOperate.obj
?????文件???????????2??2017-03-09?17:00??學生管理系統\學生管理系統\Debug\li
?????文件???????????2??2017-03-09?17:00??學生管理系統\學生管理系統\Debug\li
?????文件???????????2??2017-03-09?17:00??學生管理系統\學生管理系統\Debug\li
?????文件???????????2??2017-03-09?17:00??學生管理系統\學生管理系統\Debug\li
?????文件???????????2??2017-03-09?17:00??學生管理系統\學生管理系統\Debug\li
?????文件???????????2??2017-03-09?17:00??學生管理系統\學生管理系統\Debug\li
?????文件???????????2??2017-03-09?17:00??學生管理系統\學生管理系統\Debug\li
?????文件???????????2??2017-03-09?17:00??學生管理系統\學生管理系統\Debug\li
?????文件???????????2??2017-03-09?17:00??學生管理系統\學生管理系統\Debug\li
?????文件???????????2??2017-03-09?17:00??學生管理系統\學生管理系統\Debug\li
?????文件???????????2??2017-03-09?17:00??學生管理系統\學生管理系統\Debug\li
?????文件???????????2??2017-03-09?17:00??學生管理系統\學生管理系統\Debug\li
?????文件???????????2??2017-03-09?17:00??學生管理系統\學生管理系統\Debug\li
?????文件???????????2??2017-03-09?17:00??學生管理系統\學生管理系統\Debug\li
?????文件???????????2??2017-03-09?17:00??學生管理系統\學生管理系統\Debug\li
?????文件???????????2??2017-03-09?17:00??學生管理系統\學生管理系統\Debug\li
?????文件???????????2??2017-03-09?17:00??學生管理系統\學生管理系統\Debug\li
?????文件???????????2??2017-03-09?17:00??學生管理系統\學生管理系統\Debug\li
?????文件???????????2??2017-03-09?17:00??學生管理系統\學生管理系統\Debug\li
............此處省略128個文件信息
評論
共有 條評論