版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、实验六.学生成绩统计管理问题描述用VC+可视化开发平台实现一个本班成绩管理与统计程序,要求界面友好,简洁大方,方便使用。程序的功能要求如下:(1) 支持对话框形式的学生信息与课程成绩的录入、修改和删除;(2) 计算本班每一位同学的学分成绩GPA( grade point average) 并排名,以此作为奖学金评定的参考依据;(3)对某一门课程,按照优(90-100)/良(80-89)/中(70-79)/及格(60-69)/不及格(60分以下)五档进行划分,统计在每一档的学生人数和百分比例,并显示统计结果。(4) 支持以文本格式导出学生的成绩记录,支持从文件中导入学生成绩记录;(5) 其他成绩
2、管理与统计所需的功能,可按自己的预想进行扩展。演示时的模拟数据不少于15 人。实验理论本实验几乎考察了VC+开发的全部基本内容,其中,主要涵盖以下三大块的相关知识点:1.资源 菜单资源及其应用,工具栏2.对话框 对话框的创建,对话框的数据交换和检验3.控件 静态文本和编辑框控件,按钮控件,列表框控件,滚动条控件等另外,实验还涉及了C+的主要知识点,如“类与对象”、“派生与继承”、“I/O流”以及C+语言基础知识。功能实现和相关程序及截图鉴于VC+的消息驱动机制以及本实验的相对复杂性,使得不便以一个相对结构化的方式来说明具体实现内容,下面将以分块的形式对本系统的主要功能进行阐释。1.界面设计 如
3、图所示,界面包括a左上方的三个菜单 通过添加tab控件来实现,分别实现各个班级,年级成绩的管理和相关参数的设定功能b左侧的“增加记录”等功能按钮 单击时会弹出相应的对话框,内含静态文本和编辑框控件c三个数据显示框 包括单科成绩分类统计,任课教师,学生成绩三块(列表框控件),数据更新时会进行相应的显示,另外,还含有3个滚动条控件2.对话框形式的学生信息与课程成绩的录入、修改和删除 下面以信息录入为例对该部分功能做详细介绍a. 添加一个对话框模板资源。修改对话框模板的ID为IDD_ADDDIALOG,Caption为“增加记录”,并添加7个静态文本控件和7个编辑框控件,如图所示,“学号”和“姓名”
4、两个编辑框设置为string类型,其余设置为float类型。b. 在对话框上右击,选择“添加类”,这时会弹出“类向导对话框”。将类名改为“CADDDIALOG”,基类选择“CDialog”,然后单击“完成”按钮。c在对话框上右击,选择“添加变量”,这时会弹出“添加成员变量对话框”,如右图所示,添加变量m_strName,然后单击“完成”按钮。类似的,依次添加剩下的六个变量m_strxue,m_fmaths m_fphysicalm_fchemistrym_fenglishm_fpolitic d 在类IDD_BADIALOG头文件中将类的声明包括进来:#include” ADDDIALOG.h
5、” 添加两个成员变量,分别存放“总成绩“和“平均成绩(GPA)”e添加消息处理函数,当有记录增加时,进行相应的处理void CBaDialog:OnAdd() / TODO: Add your control notification handler code hereSelec=TRUE;CAddialog dlg;if( dlg.DoModal()=IDOK) if(this-Select()=一班) if(dlg.m_nxue=200) AfxMessageBox(一班学号在1200之间); return; else if(dlg.m_nxue=400) AfxMessageBox(二班
6、学号在200400之间);return; m_Set.AddNew(); m_nRecordCount+=1; m_Set.m_column1=dlg.m_nxue; m_Set.m_column2=dlg.m_strName; m_Set.m_column3=dlg.m_fmaths; m_Set.m_column4=dlg.m_fphysical; m_Set.m_column5=dlg.m_fchemistry; m_Set.m_column6=dlg.m_fenglish; m_Set.m_column7=dlg.m_fpolitic; m_Set.m_column8=dlg.m_fm
7、aths+dlg.m_fphysical+dlg.m_fchemistry+dlg.m_fenglish+dlg.m_fpolitic; m_Set.m_column9=(float)(m_Set.m_column8/5); this-Equal(); m_Set.Update();/Update()一定放在Equal()后 m_Set.Requery(); this-Xuan(); 类似的,可实现信息的删除功能和修改功能。略有不同的是,删除和修改功能对话框都新增加了一个密码输入框,以保护信息。3.排序功能 和信息删改功能类似,加入以下程序段即可实现排序功能。这里,用户通过单击相应的题头便可实
8、现以该项数据为依据的排序功能,连续单击可实现升序与降序两种不同排序方式见的切换。如右图,为一物理成绩为依据的降序排序。void CBaDialog:Sort(BOOL isAsc,int secol) if(m_Set.IsOpen() m_Set.Close();this-Select();m_bSet.Close();CODBCFieldInfo fieldInfo;m_Set.GetODBCFieldInfo(secol,fieldInfo);if(isAsc)m_Set.m_strSort=fieldInfo.m_strName+ ASC; m_bIsAsc=TRUE;elsem_Se
9、t.m_strSort=fieldInfo.m_strName+ DESC;m_bIsAsc=FALSE;m_Set.Requery();4.成绩分档划分 加入下列代码,当信息有变动(增、删、改)时,程序可根据变动信息对各个分档的数据进行相应修改 void CBaDialog:Equal() for(int i=0;i=90) m_bSet.m_column4-=1; if(p=80 & p=70 & p=60 & p70) m_bSet.m_column7-=1; if(p=90) m_bSet.m_column4+=1; if(p=80 & p=70 & p=60 & p70) m_bSe
10、t.m_column7+=1; if(p=”,并在查询数值中输入“90”即可,查询结果如下图所示。 7.其他一些截图和函数代码删除记录对话框修改记录对话框 年级成绩操作界面操作界面上数据的现实是通过下面的display函数来实现的void CBaDialog:display() int i=0; m_bSet.MoveFirst(); do CString s; m_ListCtrlb.InsertItem(i,m_bSet.m_column1,0);s.Format(%.1f,m_bSet.m_column2);m_ListCtrlb.SetItemText(i,1,s); s.Format
11、(%.2f,m_bSet.m_column3); m_ListCtrlb.SetItemText(i,2,s); s.Format(%d,m_bSet.m_column4); m_ListCtrlb.SetItemText(i,3,s); s.Format(%d,m_bSet.m_column5); m_ListCtrlb.SetItemText(i,4,s);s.Format(%d,m_bSet.m_column6);m_ListCtrlb.SetItemText(i,5,s); s.Format(%d,m_bSet.m_column7); m_ListCtrlb.SetItemText(i
12、,6,s);s.Format(%d,m_bSet.m_column8);m_ListCtrlb.SetItemText(i,7,s); i+; m_bSet.MoveNext(); while(!m_bSet.IsEOF(); m_bSet.Close(); 一班和二班的选择功能是通过下面的Select函数实现的CString CBaDialog:Select() if(m_Getstring=一班) m_Set.Open(); m_bSet.Open(); else m_Set.Open(AFX_DB_USE_DEFAULT_TYPE,NO2STUDENT); m_bSet.Open(AFX_DB_USE_DEFAULT_TYPE,NO2OBJECT); return m_Getstring; 最后我们为我们的管理系统设计了一个可爱大方的图标实验总结 通过这次试验,我们学习到了VC+的相关知识,比如文档、对话框和控件,理解了一些并能够进行初步应用。C+类的面向对
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026河南济源市梨林卫生院社会招聘村医1人备考题库附答案详解(基础题)
- 2026北京化工大学材料科学与工程学院科研助理招聘1人备考题库附答案详解(综合卷)
- 2026中共宁海县委党校招聘事业编制工作人员1人备考题库含答案详解(预热题)
- 医院病房信息化管理系统实施
- 消防报警系统故障处理流程方案
- 2026江苏农林职业技术学院招聘14人备考题库(第一批)及1套完整答案详解
- 2026年认识房子幼儿园
- 2026年幼儿园讲课不用
- 施工土方开挖技术方案
- 施工临时用电管理方案
- 交通安全文明题材小品剧本交通安全文明题材小品剧本;老姚探病
- 三角形的特性【全国一等奖】
- GB/T 3452.3-2005液压气动用O形橡胶密封圈沟槽尺寸
- GB 5009.228-2016食品安全国家标准食品中挥发性盐基氮的测定
- 水平三六年级跨越式跳高单元教学计划及教案
- 《物理性污染控制》电磁辐射污染及其控制
- 回转窑拆除方案
- 药品批发企业专项内审表
- 《牛传染病学》课件牛传染性胸膜肺炎
- 二讲教育经济学的基本理论-PPT课件
- 湿法脱硫工艺计算书
评论
0/150
提交评论