资源描述:
《基于GUI的学生成绩管理统设计报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、西安邮电大学MATLAB及其EDA仿真《基于GUI的学生成绩管理系统》设计报告院(系)名称:电子工程学院学生姓名:李旋专业名称:集成电路设计与集成系统班级:电路1303(16)一.设计题目概述利用图形用户界面,设计完成学生成绩管理系统。需要包括增加、删除、查询、统计功能。二.设计方案显示模块显示xls文件内容增加模块统计模块查询模块删除模块显示模块:负责将xls文件内容导入到管理系统中。增加模块:对已导入的内容进行增加处理,并更新已显示的内容。删除模块:对已导入的内容进行删除处理,并更新已显示的内容。查询模块:对已导
2、入的内容进行查询处理,并显示出查询的结果。统计模块:对已导入的内容进行统计处理,并将结果显示在相应的统计结果区域。三.设计内容1.显示模块设计功能将xls文件内容导入到管理系统中;姓名显示在’listbox1’中;成绩显示在’edit1’中。设计方法从xls文件中获取name和score,name储存学生姓名信息,并显示在’listbox1’中;score储存学生成绩信息,并显示在’edit1’中。程序编写(代码)functionpushbutton1_Callback(hObject,eventdata,handl
3、es)globalname;globalscore;[score,name]=xlsread('student.xls');score=num2cell(score);set(handles.listbox1,'string',name);set(handles.edit1,'string',score);handles.name=name;handles.score=score;guidata(hObject,handles);运行结果(图片)1.增加模块设计功能对xls文件进行添加功能,添加姓名和成绩信息。并将更
4、新后的信息显示在’liestbox1’和’edit1’中。设计方法从输入窗口获得添加学生姓名和成绩。从name数组中获得其行数,并将要添加的学生信息添加到两个cell数组的a+1行。更新变量,将新的数组写入xls文件,并显示在’liestbox1’和’edit1’中。程序编写globalname;[a,~]=size(name);prompt={'ÇëÊäÈëÐÕÃû','ÇëÊäÈë³É¼¨'};title='Ìí¼ÓѧÉú';answer=inputdlg(prompt,title,[120;120]);han
5、dles.name{a+1,1}=answer{1,1};handles.score{a+1,1}=str2double(answer{2,1});name{a+1,1}=answer{1,1};guidata(hObject,handles);set(handles.listbox1,'string',handles.name(:,1));set(handles.edit1,'string',handles.score);xlswrite('student.xls',handles.name,'sheet1','A
6、1');xlswrite('student.xls',handles.score,'sheet1','B1');运行结果1.删除模块设计功能对xls文件进行删除功能,删除指定的学生信息。并将更新后的信息显示在’liestbox1’和’edit1’中。设计方法从输入窗口中获得将要删除的学生姓名,查询该学生在name和score中的行数。将该行赋为空。更新变量,将xls文件清空,写入更新后的name和score。并显示在’liestbox1’和’edit1’中。程序编写globalname;prompt={'ÇëÊäÈë
7、ѧÉúÐÕÃû'};title='ɾ³ýѧÉúÐÅÏ¢';shanchu=inputdlg(prompt,title);g=strcmp(handles.name,shanchu);[h,~]=find(g==1);[m,~]=size(name);handles.name(h,:)=[];handles.score(h,:)=[];guidata(hObject,handles);name(h,:)=[];set(handles.listbox1,'string',handles.name(:,1));set
8、(handles.edit1,'string',handles.score);x='';xlswrite('student.xls',x,'sheet1',['A',num2str(m),':B',num2str(m)]);xlswrite('student.xls',handles.name,'sheet1','A1');xlswrite('