ImageVerifierCode 换一换
格式:DOCX , 页数:21 ,大小:259.28KB ,
资源ID:20806613      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/20806613.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C++课程设计学生成绩管理系统Word文档下载推荐.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

C++课程设计学生成绩管理系统Word文档下载推荐.docx

1、2.总体设计应画一流程图3.程序要加必要的注释4.要提供程序测试方案5.程序一定要经得起测试,宁可功能少一些,也要能运行起来,不能运行的程序是没有价值的。目 录一 概述 41.1 课程设计的目的 41.2 课程设计的要求 41.3 设计说明 4二 总体方案设计 62.1 需求分析 62.2 程序流程图 72.3 概要设计 7三 详细设计 93.1 程序的模块设计与分析 93.1.1 学生成绩管理登录界面 93.1.2 管理员添加帐号 113.1.3 管理员增加课程 123.1.4 学生选课 133.1.5 老师评定成绩 14四 程序的调试与运行结果说明 184.1 功能测试 18五 课程设计总

2、结 21参考文献 22一 概述1.1 课程设计的目的1理解和掌握该课程中的有关基本概念,程序设计思想和方法。2培养综合运用所学知识独立完成课题的能力。3培养勇于探索、严谨推理、实事求是、有错必改,用实践来检验理论,全方位考虑问题等科学技术人员应具有的素质。4掌握从资料文献、科学实验中获得知识的能力,提高学生从别人经验中找到解决问题的新途径的悟性,初步培养工程意识和创新能力。1.2 课程设计的要求1.3 设计说明这次课设我做的是学生成绩管理系统,本系统依据开发要求主要针对于教育系统,完成对日常的教育工作对学生成绩档案及其他信息的数字化管理。开发本系统可使学院教职员工减轻工作压力,比较系统地对教务

3、、教学上的各项服务和信息进行管理,同时,可以减少劳动力的使用,加快查询速度、加强管理,使各项管理更加规范化。现在在各大中小学校,用计算机管理学校的信息已经越来越普遍了。用计算机不但可以提高工作效率,而且还节省了许多人力物力,增强了学校资料的安全性。提高了学校的管理能力,为此,用计算机来管理学校的信息,是非常必要的。目前,学校工作繁杂、资料重多,目前还没有一套完整的、统一的系统。因此,开发一套适和大众的、兼容性好的系统是很有必要的,但由于知识积累及时间关系,这次课设我所设计的系统不是很完善,有些地方没有考虑到,所以实用性大打折扣,后面有时间将会将系统设计的全面些,更具有实用性。在这次课设的开发过

4、程中,我注意使其符合软件工程的设计的要求,在之前准备了许多时间来设计表结构,并将各个模块的流程画出来,使系统的各个模块功能完善,并力求系统应具有实用性、可靠性和适用性方便用户的操作,尽量减少用户的操作,并且能够对查询结果进行分类汇总,该系统还有许多不尽如人意的地方,比如用户界面不够美观,对于出错处理不够等多方面问题,这些都有待进一步改善。二 总体方案设计2.1 需求分析“学生成绩管理信息系统”包括四个模块:用户添加、学生选课、课程添加、成绩给定。这四个模块既相互联系又相互独立,学生选课、成绩给定模块必须以课程添加为基础。1用户添加:主要功能是管理员对学生、老师、课程的添加。具体包括对学生和老师

5、添加相应的帐号,姓名,密码的功能等信息。2学生选课:主要功能通过选择课程号,课程序号来确定该学生所选择的课程。3成绩给定:主要功能教师通过选择课程号,课程序号,再选定学生学号给定该学生的成绩。4课程添加:开课的功能是增加课程号,课程序号,课程名,开课教师工作证号,和该课程相应的学分等信息。程序通过登录界面,选择是管理员,学生或者是教师登入系统中,登录系统后,进行相应给定的功能。1. 管理员:用户添加,课程添加。2. 学生:选课,查看自己的不及格课程。3. 教师:选择任教课程和给学习该课程的学生打分。2.2 程序流程图在程序流程图里是程序功能模块图,主要说明了程序的运行流程。图 2-1 程序功能

6、模块图2.3 概要设计在概要设计里,根据系统需求设计学生流图,教师与管理员流图。图2-2 学生流图图2-3教师与管理员流图三 详细设计3.1 程序的模块设计与分析3.1.1 学生成绩管理登录界面图3-1 学生成绩管理登录界面void CMyDlg:OnSigninButton() manager mng; teacher tch; student stu; Int iTypeRadio=GetCheckedRadioButton(IDC_MANAGER_RADIO,IDC_TEACHER_RADIO); char str10= ; UpdateData(); if (m_user=_T() |

7、 m_pass=_T() MessageBox(用户名和密码不可以为空!); else if(iTypeRadio=IDC_MANAGER_RADIO) strcpy(str,管理员.txt if(SignIn(str) OnClearButton(); mng.ID=id; mng.Name=name; mng.DoModal(); Else InputWrong(); else if(iTypeRadio=IDC_STUDENT_RADIO)学生.txt if(SignIn(str) ) stu.ID=id; stu.Name=name; stu.DoModal(); else if(iT

8、ypeRadio=IDC_TEACHER_RADIO)教师.txt tch.ID=id; tch.Name=name; tch.DoModal(); inline void CMyDlg:InputWrong() /输入错误处理 MessageBox(输入错误,请重新输入 OnClearButton(); m_user= _T( m_pass= _T( CheckRadioButton(IDC_MANAGER_RADIO,IDC_TEACHER_RADIO,IDC_MANAGER_RADIO); UpdateData(FALSE);BOOL CMyDlg:SignIn(char * str)

9、/ 登录 ifstream m_ifile (str, ios:in); if (!m_ifile) return FALSE; CString usertemp, passtemp, nametemp; float gpatemp; m_ifile.seekg(0); if (strcmp(str, )=0) while(m_ifile usertempnametemppasstempgpatemp) if ( usertemp=m_user & passtemp=m_pass) name=nametemp; id=usertemp; return TRUE; while(m_ifile p

10、asstemp) if ( usertemp=m_user & name=nametemp;3.1.2 管理员添加帐号图3-2 管理员添加帐号void manager:OnNewButton() int iTypeRadio; if (m_newpass=_T() | m_newuser=_T() | m_newname=_T(用户名,密码和姓名都不可以为空,请重新输入!return; iTypeRadio=GetCheckedRadioButton(IDC_MANAGER_RADIO2, IDC_TEACHER_RADIO2); switch (iTypeRadio) case IDC_MA

11、NAGER_RADIO2: strcpy(str, CreateID(str); break; case IDC_STUDENT_RADIO2: case IDC_TEACHER_RADIO2: strcpy(str,CreateID(char * str) /将用户添加到文件ofstream m_ofile(str, ios:app); CString spac(), ente(nm_ofile)错误 OnClearButton(); Else if(strcmp(str, m_ofile m_newuserm_newnamem_newpassspac-1.0ente; Else m_ofi

12、le 3.1.3 管理员增加课程图3-3 管理员增加课程void curriculum:OnExitButton() OnCancel();OnClearButton() m_credit = 0; m_currID = _T( m_currName = _T( m_currNum = _T( m_currTch = _T( UpdateData(false);OnSignButton() /确定按钮 ofstream osign(课程.txt, ios: osignm_currIDm_currNumm_currNamem_currTchm_credit osign.ofstream();3.

13、1.4 学生选课图3-4 学生选课void SIGNCURRI:OnSelchangeCurridCombo() CString sCurrID; int nSel = m_currID.GetCurSel(); if(nSel=CB_ERR )return; m_currID.GetLBText(nSel, sCurrID); ifstream ifcourse( ifcourse.seekg(0); int i, n=m_currNum.GetCount(); for (i=1; i curr) if (curr.currID=sCurrID & m_currNum.FindStringE

14、xact(-1, curr.currNum)=CB_ERR) m_currNum.AddString(curr.currNum); m_currNum.SelectString(-1, curr.currNum); UpdateData(); ifcourse.ifstream(); OnSelchangeCurrnumCombo();OnSelchangeCurrnumCombo() UpdateData(); CString sCurrID, sCurrNum; int iSel = m_currID.GetCurSel(); if(iSel=CB_ERR )return; m_currI

15、D.GetLBText(iSel, sCurrID); int nSel = m_currNum.GetCurSel(); m_currNum.GetLBText(nSel, sCurrNum); if (curr.currID=sCurrID & curr.currNum=sCurrNum) m_currName=curr.currName; UpdateData(false); break;3.1.5 老师评定成绩图3-5 老师评定成绩BOOL teacher:OnInitDialog() CDialog:OnInitDialog(); extern CString name, id; N

16、ame=name; ID=id; m_welcome=欢迎+Name+老师! CString sCurrID; if (curr.currTch=ID & m_currID.FindStringExact(-1, curr.currID)=CB_ERR) m_currID.AddString(curr.currID); m_currID.SelectString(-1, curr.currID); OnSelchangeCurridCombo(); OnSelchangeStuidCombo(); return TRUE; void teacher: m_stuName= _T( m_grad

17、e=0;OnGradeButton() CString stuID; m_stuID.GetWindowText(stuID); m_currID.GetWindowText(sCurrID); m_currNum.GetWindowText(sCurrNum); float grade=0.0, credit=0.0; float GPA; fstream fgrade(选课.txtin | ios:out); CSignCourse sc;fgrade) return; streampos pos; fgrade.seekg(0); while(fgradesc.IDsc.currIDsc

18、.currNumsc.grade) if(sc.ID=stuID ) if (sc.currID=sCurrID & sc.currNum=sCurrNum) pos=fgrade.tellp(); fgrade.seekp(pos-2); fgrade=60) ifstream ifcourse(,ios: ifcourse.seekg(0); CCurri curr; while(ifcourse if (sc.currID=curr.currID & sc.currNum=curr.currNum) credit+=curr.credit; grade+=sc.grade*curr.cr

19、edit; if (credit) GPA=grade/credit; ifcourse.ifstream(); char sName15, sUser15, sPass15; float sGPA; fgrade.fstream(); fstream fstu(fstu) return; fstu.seekg(0); while(fstusUsersNamesPasssGPA) CString sname(sName), suser(sUser), spass(sPass); if (suser=stuID) pos=fstu.tellp(); fstu.seekp(pos-4); fstu

20、setprecision(3)GPA; fstu.fstream(); OnOK(); CString strText; m_currID.GetLBText(nSel, strText); int i,n=m_currNum.GetCount(); i=n; if (curr.currTch=ID & curr.currID=strText m_currNum.AddString(curr.currNum);OnSelchangeStuidCombo() CString stuID; int nSel = m_stuID.GetCurSel(); if(nSel=CB_ERR ) m_stuName=_T( UpdateData(false); return; m_stuID.GetLBText(nSel, stuID); ifstream m_ifile (m_ifile) return; float GPAtemp;GPAtemp) if ( usertemp=stuID) m_stuName=nametemp; m_ifile. ifstream();

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1