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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

MFC学生信息管理系统课程设计报告.docx

1、MFC学生信息管理系统课程设计报告 C+基于MFC类可视化程序设计报告方案概述1、问题描述学生信息包括:学号、姓名、性别、年龄、班级、专业等信息。2、功能要求(1)添加功能:程序能够添加学生的记录和课程设计题目记录,提供选择界面供用户选择所要添加的类别。添加记录时,要求学号和编号要唯一。如果添加了重复记录,则提示数据添加重复并取消添加。(2)查询功能:可根据学号、姓名、编号、名称等信息对已添加的学生和课程设计题目进行查询,如果未找到,给出相应的提示信息,如果找到,则显示相应的记录信息。(3)显示功能:可当前系统中所有学生的信息和课程设计题目信息显示,每条记录占据一行。(4)编辑功能:可根据查询

2、结果对相应的记录进行修改,修改时注意学号的唯一性。(5)删除功能:主要实现对已添加的学生和课程设计题目记录进行删除。如果当前系统中没有相应的记录,则提示“记录为空!”并返回操作。(6)保存功能:可将当前系统中各类记录存入文件中,存入方式任意。(7)注销功能:注销当前用户,返回登陆界面。3、问题的解决方案 根据系统功能要求,可以将问题解决分为以下步骤:(1)应用系统分析,建立该系统的功能模块框图以及界面的组织和设计;(2)分析系统中的各个实体及它们之间的关系;(3)根据问题描述,设计系统的类层次;(4)完成类层次中各个类的描述;(5)完成类中各个成员函数的定义;(6)完成系统的应用模块;(7)功

3、能调试;(8)完成系统总结报告。学生选修课系统设计方案系统登录界面:主界面:信息统计界面:系统实现:1.首先建立一个MFC类对话框,添加相关系统控件。如图:2.在解决方案中添加Student类,并实现这个类。代码如下:/Student.hclass Studentpublic: string name; string stuNo; string sex; string major; double score; string banji;public: Student(void); Student(string name,string stuNo,string sex,string major,

4、double score,string banji);/Student.cpp#include StdAfx.h#include Student.hStudent:Student(void)Student:Student(string name,string stuNo,string sex,string major,double score,string banji) this-name=name; this-stuNo=stuNo; this-sex=sex; this-major=major; this-score=score; this-banji=banji;3.将数据保存、读取。在

5、解决方案中创建FileManager类。代码如下:/FileManager.h#pragma once#include Student.hclass FileManagerprivate: char filename40;public: FileManager(char filename); FileManager(void); void add(Student stu); int remove(string name); void edit(Student stu); Student search(string name); map loadAll(); void saveAll(map m

6、);/FileManager.cpp#include StdAfx.h#include FileManager.hFileManager:FileManager(char filename) strcpy_s(this-filename,40,filename);FileManager:FileManager(void) void FileManager:add(Student s) ofstream fout(filename,ios:out|ios:app); fouts.name s.stuNo s.sex s.major s.score s.banjiendl; fout.close(

7、);int FileManager:remove(string name) map m=loadAll(); map:iterator it=m.find(name); if(it=m.end() return 0;/表示学生不存在 else m.erase(it); saveAll(m); return 1;/表示有一个学生被删除 void FileManager:edit(Student stu) map m=loadAll(); mstu.name=stu; saveAll(m);Student FileManager:search(string name) Student s; map

8、 m=loadAll(); map:iterator p; for(p=m.begin();p!=m.end();p+)/据姓名查 if(name=p-first)/根据姓名找到 s=p-second;/取出该学生对象 break; return s;/将文件中的每一名学生(一行)存入一个mapmap FileManager:loadAll() map m; map:iterator p; ifstream fin(filename,ios:in); while(!fin.eof() Student s; fins.names.stuNos.sexs.majors.scores.banji;

9、if(s.name.size()!=0) ms.name=s; fin.close(); return m;void FileManager:saveAll(map m) ofstream fout(filename,ios:out); Student s; map:iterator p; for(p=m.begin();p!=m.end();p+) s=p-second;/取出该学生对象 fouts.name s.stuNo s.sex s.major s.score s.banjicbx_major.GetWindowTextA(major); Student s; s.name = LP

10、CSTR(name); s.stuNo=LPCSTR(stuNo); s.sex=(this-int_sex=0?男:女); s.score=score; s.major= LPCSTR(major); s.banji = (this-int_banji = 0 ? 一班 : 二班); f.add(s); MessageBox(添加成功!,提示);void CdialogDlg:OnBnClickedButtonsearch() /按姓名查找 UpdateData(TRUE); FileManager f(stuInfo.txt); Student stu=f.search(LPCSTR(na

11、me); if(stu.name=) MessageBox(该学生不存在!,提示); return; /将对象的值在界面显示出来 this-stuNo=stu.stuNo.c_str(); this-int_sex=(stu.sex=男?0:1); this-int_banji = (stu.banji = 一班 ? 0 : 1); this-score=stu.score; this-cbx_major.SelectString(0,stu.major.c_str(); UpdateData(FALSE);/更新界面控件,使其显示关联变量的值void CdialogDlg:OnBnClick

12、edButtonremove() /按姓名删除 UpdateData(TRUE); FileManager f(stuInfo.txt); if(f.remove(LPCSTR(name)=0) MessageBox(该学生不存在!,提示); else MessageBox(删除成功!,提示);void CdialogDlg:OnBnClickedButtonedit() /编辑按钮的功能 UpdateData(TRUE); FileManager f(stuInfo.txt); Student stu=f.search(LPCSTR(name); if(stu.name=) MessageBox(不允许修改姓名!,提示); return; CString major; this-cbx_major.GetWindowTextA(major); Student s; s.name = LPCSTR(name); s.stuNo=LPCSTR(stuNo); s.sex=(this-i

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

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