MFC学生信息管理系统课程设计报告(共16页).doc
《MFC学生信息管理系统课程设计报告(共16页).doc》由会员分享,可在线阅读,更多相关《MFC学生信息管理系统课程设计报告(共16页).doc(16页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上C+可视化课程设计学生信息管理系统设计C+基于MFC类可视化程序设计报告小组成员:赵文琪,倪涛学号:,班级:软件132指导老师:汪国武安徽工程大学计算机与信息学院2014/12/30专心-专注-专业方案概述1、问题描述学生信息包括:学号、姓名、性别、年龄、班级、专业等信息。2、功能要求(1)添加功能:程序能够添加学生的记录和课程设计题目记录,提供选择界面供用户选择所要添加的类别。添加记录时,要求学号和编号要唯一。如果添加了重复记录,则提示数据添加重复并取消添加。(2)查询功能:可根据学号、姓名、编号、名称等信息对已添加的学生和课程设计题目进行查询,如果未找到,给出相应
2、的提示信息,如果找到,则显示相应的记录信息。(3)显示功能:可当前系统中所有学生的信息和课程设计题目信息显示,每条记录占据一行。(4)编辑功能:可根据查询结果对相应的记录进行修改,修改时注意学号的唯一性。(5)删除功能:主要实现对已添加的学生和课程设计题目记录进行删除。如果当前系统中没有相应的记录,则提示“记录为空!”并返回操作。(6)保存功能:可将当前系统中各类记录存入文件中,存入方式任意。(7)注销功能:注销当前用户,返回登陆界面。3、问题的解决方案 根据系统功能要求,可以将问题解决分为以下步骤:(1)应用系统分析,建立该系统的功能模块框图以及界面的组织和设计;(2)分析系统中的各个实体及
3、它们之间的关系;(3)根据问题描述,设计系统的类层次;(4)完成类层次中各个类的描述;(5)完成类中各个成员函数的定义;(6)完成系统的应用模块;(7)功能调试;(8)完成系统总结报告。学生选修课系统设计方案系统信息界面系统界面登陆界面系统登录界面:主界面:信息统计界面:系统实现:1. 首先建立一个MFC类对话框,添加相关系统控件。如图:2. 在解决方案中添加Student类,并实现这个类。代码如下:/Student.hclass Studentpublic:string name;string stuNo;string sex;string major;double score;string
4、 banji;public:Student(void);Student(string name,string stuNo,string sex,string major,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=stu
5、No;this-sex=sex;this-major=major;this-score=score;this-banji=banji;3. 将数据保存、读取。在解决方案中创建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(St
6、udent stu);Student search(string name);map loadAll();void saveAll(map m);/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:ap
7、p);fouts.name s.stuNo s.sex s.major s.score s.banjiendl;fout.close();int FileManager:remove(string name)map m=loadAll();map:iterator it=m.find(name);if(it=m.end()return 0;/表示学生不存在elsem.erase(it);saveAll(m);return 1;/表示有一个学生被删除void FileManager:edit(Student stu)map m=loadAll();mstu.name=stu;saveAll(m)
8、;Student FileManager:search(string name)Student s;map 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;fin
9、s.names.stuNos.sexs.majors.scores.banji;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
10、(major);Student s;s.name = LPCSTR(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=
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MFC 学生 信息管理 系统 课程设计 报告 16
限制150内