C++课程设计高校学生信息管理系统.docx
- 文档编号:25270275
- 上传时间:2023-06-06
- 格式:DOCX
- 页数:11
- 大小:43.83KB
C++课程设计高校学生信息管理系统.docx
《C++课程设计高校学生信息管理系统.docx》由会员分享,可在线阅读,更多相关《C++课程设计高校学生信息管理系统.docx(11页珍藏版)》请在冰豆网上搜索。
C++课程设计高校学生信息管理系统
《C++程序设计》课程设计
课程名称:
C++语言程序设计
设计课题:
高校学生信息管理系统
学院:
信息科学技术学院
专业:
数学与应用数学
年级:
目录
一、引言1
二、课程设计任务1
三、设计方案1
1、程序代码1
2、运行结果截图8
四、结论8
五、参考文献9
《C++程序设计语言》课程设计
一、引言
随着人们生活水平的提高,计算机发展异常迅速。
如今,计算机已经深入到我们社会的各个领域,计算机的使用也已不再局限于科学计算,它已进入人类社会的各个领域并发挥着越来越重要的作用。
通过计算机对各类问题求解已经成为一种高效、快捷的方式。
本课程设计就是用C++研究两点距离的求解的问题,实现对两点距离的问题求解,和实现类模板的应用以及函数的调用。
二、课程设计的任务
使用类实现编写一个高校学生信息管理系统,能够实现录入学生的基本信息,含有姓名、编号、性别、出生信息、身份证号、专业、导师以及分出各类学生,有研究生、助教博士生等信息。
三、设计方案
1、程序代码:
lab1_1.h:
People(人员)类的声明及成员函数的实现
#include
#include
usingnamespacestd;
classDate{
private:
intyy,mm,dd;
public:
Date(){}
Date(Date&d):
yy(d.yy),mm(d.mm),dd(d.dd){}//增添
~Date(){}
intGetyy()const{returnyy;}
intGetmm()const{returnmm;}
intGetdd()const{returndd;}
voidSetyy(inty){yy=y;}
voidSetmm(intm){mm=m;}
voidSetdd(intd){dd=d;}
};
classPeople{
private:
charname[11];//姓名,增添
charnumber[7];//编号
charsex[3];//男或女
Datebirthday;//出生日期
charid[16];//身份证号
public:
People(){}
People(People&p);
~People(){}
voidGetname(charna[]){strcpy(na,name);}
voidGetnumber(charnu[]){strcpy(nu,number);}
voidGetsex(charse[]){strcpy(se,sex);}
intGetbirthyy()const{returnbirthday.Getyy();}
intGetbirthmm()const{returnbirthday.Getmm();}
intGetbirthdd()const{returnbirthday.Getdd();}
voidGetid(chard[]){strcpy(d,id);}
voidSetname(charna[]){strcpy(name,na);}
voidSetnumber(charnu[]){strcpy(number,nu);}
voidSetsex(charse[]){strcpy(sex,se);}
voidSetbirthyy(inty){birthday.Setyy(y);}
voidSetbirthmm(intm){birthday.Setmm(m);}
voidSetbirthdd(intd){birthday.Setdd(d);}
voidSetid(chard[]){strcpy(id,d);}
voidinput();
voidoutput();
};
People:
:
People(People&p)
:
birthday(p.birthday)
{
strcpy(name,p.name);
strcpy(number,p.number);
strcpy(sex,p.sex);
strcpy(id,p.id);
}
inlinevoidPeople:
:
input()
{
cout<<"姓名:
";cin>>name;
cout<<"编号:
";cin>>number;
cout<<"性别(男/女):
";cin>>sex;
cout<<"出生日期(年月日):
";
inty,m,d;cin>>y>>m>>d;
Setbirthyy(y);Setbirthmm(m);Setbirthdd(d);
cout<<"身份证号:
";cin>>id;
}
inlinevoidPeople:
:
output()
{
cout<<"姓名:
"< "< cout<<"性别: "< cout<<"出生日期: "< < cout<<"身份证号: "< } (2)lab1_2.h: People类的派生类 #include"lab1_1.h" classstudent: virtualpublicPeople{//学生类 private: charclassNo[7];//班号 public: student(){} student(student&st): People(st){strcpy(classNo,st.classNo);}//使用类型兼容规则 ~student(){} voidGetclassNo(charcNo[]){strcpy(cNo,classNo);} voidSetclassNo(char*c){strcpy(classNo,c);} voidinput() {People: : input();cout<<"班号: ";cin>>classNo;} voidoutput() {People: : output();cout<<"班号: "< }; classteacher: virtualpublicPeople{//教师类 private: charprincipalship[11];//职务 chardepartment[21];//部门 public: teacher(){} teacher(teacher&t): People(t){ strcpy(principalship,t.principalship); strcpy(department,t.department); } ~teacher(){} voidGetprincipalship(char*pri){strcpy(pri,principalship);} voidGetdepartment(char*dep){strcpy(dep,department);} voidSetprincipalship(char*pri){strcpy(principalship,pri);} voidSetdepartment(char*dep){strcpy(department,dep);} voidinput(){ People: : input(); cout<<"职务: ";cin>>principalship; cout<<"部门: ";cin>>department; } voidoutput(){ People: : output(); cout<<"职务: "< cout<<"部门: "< } }; classgraduate: publicstudent{//研究生类 private: charsubject[21];//专业 teacheradviser;//导师 public: graduate(){} graduate(graduate&g): student(g),adviser(g.adviser){strcpy(subject,g.subject);} ~graduate(){} voidGetSubject(char*sb){strcpy(sb,subject);} voidGetadviser(teacher&ad){ charna[11];adviser.Getname(na);ad.Setname(na); charnb[7];adviser.Getnumber(nb);ad.Setnumber(nb); charse[3];adviser.Getsex(se);ad.Setsex(se); ad.Setbirthyy(adviser.Getbirthyy()); ad.Setbirthmm(adviser.Getbirthmm()); ad.Setbirthdd(adviser.Getbirthdd()); charid0[16];adviser.Getid(id0);ad.Setid(id0); charpp[11];adviser.Getprincipalship(pp);ad.Setprincipalship(pp); chardp[21];adviser.Getdepartment(dp);ad.Setdepartment(dp); } voidSetSubject(char*sb){strcpy(subject,sb);} voidSetadviser(teacher&ad){ charna[11];ad.Getname(na);adviser.Setname(na); charnb[7];ad.Getnumber(nb);adviser.Setnumber(nb); charse[3];ad.Getsex(se);adviser.Setsex(se); adviser.Setbirthyy(ad.Getbirthyy()); adviser.Setbirthmm(ad.Getbirthmm()); adviser.Setbirthdd(ad.Getbirthdd()); charid0[16];ad.Getid(id0);adviser.Setid(id0); charpp[11];ad.Getprincipalship(pp);adviser.Setprincipalship(pp); chardp[21];ad.Getdepartment(dp);adviser.Setdepartment(dp); } voidinput(){ student: : input(); cout<<"专业: ";cin>>subject; cout<<"导师: "< adviser.input(); } voidoutput(){ student: : output(); cout<<"专业: "< cout<<"导师: "< adviser.output(); } }; classTA: publicgraduate,publicteacher{//助教博士生类 public: TA(){} TA(TA&ta): graduate(ta),teacher(ta){} ~TA(){} voidinput(){ graduate: : input(); cout<<"助教博士生的职务: ";charpp[11];cin>>pp; Setprincipalship(pp); cout<<"助教博士生所在部门: ";chardp[21];cin>>dp; Setdepartment(dp); } voidoutput(){ graduate: : output(); charpp[11];Getprincipalship(pp); cout<<"助教博士生的职务: "< chardp[21];Getdepartment(dp); cout<<"助教博士生所在部门: "< } }; (3)Lab1_2.cpp: 主函数(测试) #include"lab1_2.h" voidmain(){ TAa; cout<<"输入一个助教博士生的信息: "< a.input(); cout<<"\n输出一个助教博士生的信息: "< a.output(); } 2、运行结果截图 四、总结 通过本次课程设计,让我对C++这门学科对有了进一步的认识,掌握了类及类模板的应用。 以前对该课程不再那么恐惧,任何事情没有做不到只有愿不愿意去做。 之后凭借那闪现在眼前的点点思路,慢慢在琢磨,终于想出了大体的程序内容。 然后一个一个函数的思考,一步一步的编写,调试,做起来也就越来越顺手了。 通过我的反复思考,程序中的错误得到了解决。 函数功能也得到了进一步的完善。 并且在本次课程设计的过程中,让我知道一个人的力量真的好有限,即使个人能力再强,做一个大点的项目,也会力不从心。 所以遇到问题要学会去问同学,问老师,只有这样才能将事顺利办得越快越好。 通过这次课程设计,会为我们以后进入社会提供一定的经验。 我相信在今后的学习真的我会更加努力,积累经验。 使自己在编程等各方面得到提高。 五、参考文献 [1]张基温编著.C++程序设计基础.北京: 高等教育出版社,1996 [2]宛延闺.c++语言和面向对象程序设计.北京: 清华大学出版社,1999 [3]钱能主编.c++程序设计教程.北京: 清华大学出版社,1999
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+ 课程设计 高校学生 信息管理 系统