資源簡介
南航C++課程設計學生成績管理系統,內含課設報告說明書

代碼片段和文件信息
#include
#include
#include
#include
#include
#define?M?16
#define?N?14
#define?K?3
??
class?Student //類的定義,包括學生信息
{
private:
char?num[N];
char?name[M];
int?score[K];
double?gpa[K];
double?agpa;
public:
Student(){};????????????????????????????//默認構造函數
char?*getnum()??????????????????????????//獲取學號
{
return?num;
}??????????????
char?*getname()?????????????????????????//獲取姓名
{
return?name;
}???????????????????????????????????????
void?setnum(char?nu[])??????????????????//設置學號
{
strcpy(numnu);
}
void?setname(char?na[])?????????????????//設置姓名
{
strcpy(namena);
}
void?setscore(int?sc[])?????????????????//設置學生成績
{
for(int?i=0;i score[i]=sc[i];
}
void?setgpa(double?g[])?????????????????//設置學生成績相應績點
{
for(int?i=0;i gpa[i]=g[i];
}
void?setagpa(double?ag)?????????????????//設置學生的平均績點
{
agpa=ag;
}
void?computegpa()???????????????????????//求學生成績相應績點
{
int?m;
for(int?i=0;i {
if(score[i]<60)?
gpa[i]=0;
else
{
gpa[i]=score[i]/10.0-5;
m=int(gpa[i]*10+0.5);
gpa[i]=m/10.0;
}
}
}
void?computeagpa()? //求學生的平均績點
{
int?m;
double?sum=0;
for(int?i=0;i sum+=gpa[i];
agpa=sum/K;
m=int(10*agpa+0.5);
agpa=m/10.0;
}
void?getscore(int?sc[])?????????????????//取出學生成績
{
for(int?i=0;i sc[i]=score[i];
}???????????????????????????????????????
void?getgpa(double?g[])??????????????????//取出學生績點
{
for(int?i=0;i g[i]=gpa[i];
}????????????????????????????????????
void?getagpa(double?&ag)????????????????//取得學生的平均績點
{
ag=agpa;
}???????????????????????????????????
void?disp() //輸出學生信息
{
cout< for(int?i=0;i for(int?j=0;j cout< }
};
class?UserDatabase
{
int?nElem;??????????????????????????????//學生信息表中的元素個數
int?Maxu;???????????????????????????????//最多的學生
Student?*user;?????????????????????? //指向學生信息的指針
char?fname[50];
public:
UserDatabase(int?n=35)??????????????????//構造函數,初始化學生信息表,將user.txt讀到User[]中?????????????????
{
int?isc[K];
????double?g[K]ag;
????char?num[N]na[M];
????ifstream?infile;????????????????????????//定義文件對象
????infile.open(“user.txt“ios::in);????????//打開該數據文件
????if(!infile)?????????????????????????????//打開文件發生錯誤,程序退出
{
cout<<“打開文件錯誤!\n“;
????exit(0);
}
????nElem=0;
????Maxu=n;
????if(n)
????user=new?Student[n];
????else
????user=0;
????while(infile>>num)
{
????infile>>na;
????for(i=0;i ????infile>>sc[i];
????for(i=0;i ????infile>>g[i];
????infile>>ag;
????if(nElem==Maxu)?????????????????????//如果實際空間不夠
{
????Student?*newptr;
????newptr=new?Student[Maxu+10];????//申請一新表空間
????for(i=0;i
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????396??2015-06-07?09:37??C++課設\user.txt
?????文件??????20653??2015-06-07?09:33??C++課設\學生成績管理.cpp
?????文件?????391217??2016-06-01?11:10??C++課設\報告.doc
?????目錄??????????0??2016-06-01?11:12??C++課設
-----------?---------??----------?-----??----
???????????????412266????????????????????4
- 上一篇:基于二叉堆優化的A星算法
- 下一篇:用C++,QT畫分形圖
評論
共有 條評論