二、部分源代码

function varargout = susan(varargin)
% susan M-file for susan.fig
% susan, by itself, creates a new susan or raises the existingbianji
% singleton*.
%
% H = susan returns the handle to a new susan or the handle to
% the existing singleton*.
%
% susan('CALLBACK',hObject,eventData,handles,...) calls the local
% function named CALLBACK in susan.M with the given input arguments.
%
% susan('Property','Value',...) creates a new susan or raises the
% existing singleton*. Starting from the left, property value pairs are
% applied to the GUI before susan_OpeningFcn gets called. An
% unrecognized property name or invalid value makes property application
% stop. All inputs are passed to susan_OpeningFcn via varargin.
%
% *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one
% instance to run (singleton)".
%
% See also: GUIDE, GUIDATA, GUIHANDLES

% Edit the above text to modify the response to help susan

% Last Modified by GUIDE v2.5 25-Apr-2020 21:07:48

% Begin initialization code - DO NOT EDIT
gui_Singleton = 1;

gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @susan_OpeningFcn, ...
'gui_OutputFcn', @susan_OutputFcn, ...
'gui_LayoutFcn', [] , ...
'gui_Callback', []);

if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end

if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
% End initialization code - DO NOT EDIT


% --- Executes just before susan is made visible.
function susan_OpeningFcn(hObject, eventdata, handles, varargin)
% This function has no output args, see OutputFcn.
% hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% varargin command line arguments to susan (see VARARGIN)

% Choose default command line output for susan

handles.output = hObject;

% Update handles structure

%姓名 name[i] 为第i个学生的姓名
%关系 guanxi1[i] 为第i个学生的第一位亲人
guidata(hObject, handles);
global baocunflag;
baocunflag=0;
global nummax;
nummax=1;
global stunum;
stunum=1;%记录第几个学生
global sum;
sum=zeros(1000,1);
global name ;
name={'',''};
global ID ;
ID=[];
global grade ;
grade=1;
global renkou ;
renkou=5;
global hukou ;
hukou=1;
global gucan ;
gucan=1;
global danqin ;
danqin=1;
global lieshi ;
lieshi=1;
global guanxi1 ;
guanxi1=[];
global guanxi2;
guanxi2=[];
global guanxi3 ;
guanxi3=[];
global guanxi4 ;
guanxi4=[];
global age1 ;
age1=[];
global age2 ;
age2=[];
global age3 ;
age3=[];
global age4 ;
age4=[];
global danwei1 ;
danwei1=[1];
global danwei2;
danwei2=1;
global danwei3 ;
danwei3=1;
global danwei4 ;
danwei4=1;
global shouru1 ;
shouru1=[];
global shouru2 ;
shouru2=[];
global shouru3 ;
shouru3=[];
global shouru4 ;
shouru4=[];
global health1 ;
health1=1;
global health2 ;
health2=1;
global health3 ;
health3=1;
global health4 ;
health4=1;
global yueshouru ;
yuehsouru=[];
global zizhu ;
zizhu=[];
global qiankuan ;
qiankuan=[];
global guanflag;
guanflag=5;
set(handles.renkou,'Value',5);
% UIWAIT makes susan wait for user response (see UIRESUME)
% uiwait(handles.figure1);

function sumsum=fguanxi(age,danwei,shouru,health)
sumsum=0;
if age<45
sumsum=sumsum+8;
else if age>=45 && age<55
sumsum=sumsum+9;
else if age>=55
sumsum=sumsum+10;
end
end
end
switch danwei
case 1
sumsum=sumsum+8;
case 2
sumsum=sumsum+8;
case 3
sumsum=sumsum+9;
case 4
sumsum=sumsum+10;
otherwise
sumsum=sumsum+8;
end
if shouru<2000
sumsum=sumsum+10;
else if shouru>=2000 && shouru<3000
sumsum=sumsum+9;
else if shouru>=3000 && shouru<4000
sumsum=sumsum+8;
else if shouru>=4000 && shouru<5000
sumsum=sumsum+7;
else if shouru>=5000
sumsum=sumsum+6;
end
end
end
end
end
switch health
case 1
sumsum=sumsum+8;
case 2
sumsum=sumsum+9;
case 3
sumsum=sumsum+10;
end

三、运行结果

【数学建模】基于matlab贫困生评测系统【含Matlab源码 1744期】_参考文献

【数学建模】基于matlab贫困生评测系统【含Matlab源码 1744期】_matlab_02

四、matlab版本及参考文献

1 matlab版本

2014a

2 参考文献

[1]李昕.MATLAB数学建模[M].清华大学出版社.2017

[2]王健,赵国生.MATLAB数学建模与仿真[M].清华大学出版社.2016

[3]余胜威.MATLAB数学建模经典案例实战[M].清华大学出版社.2015