資源簡介
本設計采用自頂向下的結構化程序設計方法或面向對象程序設計方法進行設計,給出詳細數據結構定義,總體設計方案,用戶界面設計,各個功能模塊的算法分析設計及算法流程圖,各個類或函數的定義,程序測試及結果分析,程序優化等。所設計的教務信息管理系統應具有以下功能:
1、文件操作功能
2、數據輸入功能
3、編輯數據功能
4、查找功能
5、數據顯示功能
6、數據排序功能
7、清空文檔功能

代碼片段和文件信息
#include
#include?
#include?
using?namespace?std;
?
//學生信息結點
class?Student
{
public:
char?name[20];
long?long?int?num;
int?age;
long?long?int?phone;
int?dorm;
bool?sex;
int?p;
int?courseno;
char?coursename[20];
int?examgrade;
int?dailygrade;
int?overallgrade;
int?credit;
bool?pass;
int?q;
int?ban;
int?score[6];
Student?*next;
void?input();
void?ReadFile(ifstream?&in);
};
?
//往結點輸入信息
void?Student::input()
{
cout<<“請輸入學生姓名:“;
cin>>name;
cout<<“請輸入學生學號:“;
cin>>num;
cout<<“請輸入學生年齡:“;
cin>>age;
cout<<“請輸入電話號碼:“;
cin>>phone;
cout<<“請輸入學生宿舍號碼:“;
cin>>dorm;
cout<<“請輸入學生班級?:“;
cin>>ban;
cout<<“請輸入學生性別(1-男,0-女):“;
????cin>>p;
????if(p)sex?=true;
????else?sex=false;
cout<<“請輸入選修課程編號:“;
cin>>courseno;
cout<<“請輸入選修課程名稱:“;
cin>>coursename;
cout<<“請輸入考試成績:“;
cin>>examgrade;
cout<<“請輸入平時成績:“;
cin>>dailygrade;
cout<<“請輸入綜合成績:“;
cin>>overallgrade;
cout<<“請輸入學分:“;
cin>>credit;
cout<<“是否重修?(1-是,0-不是)“;
cin>>q;
????if(q)pass?=true;
????else?pass=false;
cout<<“請繼續輸入必修課成績:“< cout<<“請輸入高等數學成績:“;
????cin>>score[0];
????cout<<“請輸入高級語言程序設計成績:“;
cin>>score[1];
cout<<“請輸入線性代數成績:“;
cin>>score[2];
cout<<“請輸入電路成績:“;
cin>>score[3];
cout<<“請輸入大學物理成績:“;
cin>>score[4];
cout<<“請輸入工程制圖成績:“;
????cin>>score[5];
cout< return?;?
}
?
//從文檔中讀取值到結點
void?Student::ReadFile(ifstream?&in)
{
in>>name>>num;
}
?
//學生信息結點鏈表
class?StudentMessage
{
public:
StudentMessage();
~StudentMessage();
//關于學生信息這個類所用到的函數
void?Show_Menu();??????????????????????????????????????????????//顯示菜單
void?Add_Node();???????????????????????????????????????????????//增加結點
void?Del_node();???????????????????????????????????????????????//刪除結點
void?Display();????????????????????????????????????????????????//顯示
void?Find();???????????????????????????????????????????????????//查找
void?Modify();?????????????????????????????????????????????????//修改
void?Load();???????????????????????????????????????????????????//加載
void?Save();???????????????????????????????????????????????????//保存
void?Clean();??????????????????????????????????????????????????//刪除
void?Swap_node(Student?*qStudent*p);??????????????????????????
void?Sort();
void?Grade();
private:?
Student?*head;??//鏈表頭?
Student?*end; //鏈表尾?
ifstream?in;
ofstream?out;
};
?
//構造函數
StudentMessage::StudentMessage()
{
//初始化,頭尾結點?
head?=?new?Student;
head->next?=?new?Student;
end?=?head->next;?
ifstream?in(“file.txt“);?
char?ch?=?in.get();
if(in.eof())
{
cout<<“file?is?empty“< }
while(!in.eof())
{
end->ReadFile(in);
if(end->name[0]==‘\0‘)break;??
?
end->next?=?new?Student;
end?=?end->next;
}
}
?
//析構函數
StudentMessage::~StudentMessage()
{
Save();????//當正常退出程序的時候,保存數據到file.txt中?
Student?*pos?=?head->next;
Student?*temp;
while(pos!=end)
{
temp?=?pos;
pos?=?pos->next;
delete?temp;
}
delete?headend;
}
?
//增加結點
void?StudentMessage::Add_Node()
{
char?quit;
while(1)
{
end->input();
end->next?
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????9270??2019-06-21?11:29??C++\【C++課程設計】.cpp
?????文件??????711168??2020-10-06?16:49??C++\【C++課程設計】.doc
?????目錄???????????0??2020-10-06?16:50??C++\
- 上一篇:RS232串口通訊VS2010
- 下一篇:VTK圖形圖像開發進階_高清完整版
評論
共有 條評論