第3章 MATLAB程序设计 3.1M文件 3.2数据的输入输出 3.3选择结构 34循环结构 3.5函数文件 3.6全局变量和局部变量
第3章 MATLAB程序设计 3.1 M文件 3.2 数据的输入输出 3.3 选择结构 3.4 循环结构 3.5 函数文件 3.6 全局变量和局部变量
3.1M文件 3.1.1M文件的建立与编辑 1建立新的M文件 1)菜单操作: MATLAB命令窗口的Fl菜单 New菜单项→Mfle命令 (2)命令操作:在 MATLAB命令窗口输入命令edit (3)命令按钮操作:单击 MATLAB命令窗口工具栏 上的“新建”命令按钮 2.编辑已有的M文件
3.1 M文件 3.1.1 M文件的建立与编辑 1.建立新的M文件 (1)菜单操作:MATLAB命令窗口的File菜单 → New菜单项 → M-file命令。 (2)命令操作:在MATLAB命令窗口输入命令edit。 (3)命令按钮操作:单击MATLAB命令窗口工具栏 上的“新建”命令按钮。 2. 编辑已有的M文件
3.1.2M文件的分类 >分类:命令文件( Script File)和函数文件 (Function File) 主要区别
3.1.2 M文件的分类 ➢分类:命令文件(Script File)和函数文件 (Function File)。 ➢主要区别
例3.1建立一个命令文件将变量a,b的值互换,然后运 行该命令文件。 首先建立命令文件并以文件名 exch.n存盘: clear a=1:10;b=[112,13,14;15,16,17,18] c=: a=b: b= ab 然后在 MATLAB的命令窗口中输入exch,将会执行 该命令文件
例3.1 建立一个命令文件将变量a,b的值互换,然后运 行该命令文件。 首先建立命令文件并以文件名exch.m存盘: clear; a=1:10; b=[11,12,13,14;15,16,17,18]; c=a;a=b;b=c; a b 然后在MATLAB的命令窗口中输入exch,将会执行 该命令文件
例3.2建立一个函数文件将变量ab的值互 换,然后在命令窗口调用该函数文件 首先建立函数文件 fetch. m: function [a, b=exch(a, b) c-a:a=bb=c 然后在 MATLAB的命令窗口调用该函数 文件: clear x=1:10;y=[11,12,13,14;15,16,17,18 Ix,y=exch(x, y)
例3.2 建立一个函数文件将变量a,b的值互 换,然后在命令窗口调用该函数文件。 首先建立函数文件fexch.m: function [a,b]=exch(a,b) c=a;a=b;b=c; 然后在MATLAB的命令窗口调用该函数 文件: clear; x=1:10; y=[11,12,13,14;15,16,17,18]; [x,y]=fexch(x,y)
3.2数据的输入输出 3.2.1 Input函数 调用格式为: A= Input(提示信息,选项 其中提示信息为一个字符串,用于提示用户输入 什么样的数据。 如果在 Input函数调用时采用s选项,则允许用户 输入一个字符串。例如,想输入一个人的姓名, 可采用命令: xm=input(What"s your name?,'S)
3.2 数据的输入输出 3.2.1 input函数 调用格式为: A=input(提示信息,选项); 其中提示信息为一个字符串,用于提示用户输入 什么样的数据。 如果在input函数调用时采用's'选项,则允许用户 输入一个字符串。例如,想输入一个人的姓名, 可采用命令: xm=input('What''s your name?','s')
322disp函数 调用格式为 disp(输出项) 其中输出项既可以为字符串,也可以为 矩阵。 注意:用dsp函数显示矩阵时将不显示矩 阵的名字,而且其格式更紧密,且不留 任何没有意义的空行
3.2.2 disp函数 调用格式为 disp(输出项) 其中输出项既可以为字符串,也可以为 矩阵。 注意:用disp函数显示矩阵时将不显示矩 阵的名字,而且其格式更紧密,且不留 任何没有意义的空行
例3.3求一元二次方程ax2+bx+c=0的根。 程序如下: a=input(a=? b=input(b=?") c=input(c=?") d=b*b-4* X=[(b+sqrt(d))/(2*a), (-b-sqrt(d))/(2*a) disp(xl=,num2str(x(1), x2=,num2str(X(2)D
例3.3 求一元二次方程ax2 +bx+c=0的根。 程序如下: a=input('a=?'); b=input('b=?'); c=input('c=?'); d=b*b-4*a*c; x=[(-b+sqrt(d))/(2*a),(-b-sqrt(d))/(2*a)]; disp(['x1=',num2str(x(1)),',x2=',num2str(x(2))]);
323 pause函数 其调用格式为: pause(延迟秒数) 如果省略延迟时间,直接使用 pause,则 将暂停程序,直到用户按任一键后程序 继续执行。 若要强行中止程序的运行可使用Ctrl+C 命令
3.2.3 pause函数 其调用格式为: pause(延迟秒数) 如果省略延迟时间,直接使用pause,则 将暂停程序,直到用户按任一键后程序 继续执行。 若要强行中止程序的运行可使用Ctrl+C 命令
3.3选择结构 3.31i语句 在 MATLAB中,i语句有3种格式 1.单分支i语句 语句格式为: if条件 语句组 end 当条件成立时,则执行语句组,执行完之后继 续执行if语句的后继语句,若条件不成立,则 直接执行i语句的后继语句
3.3 选择结构 3.3.1 if语句 在MATLAB中,if语句有3种格式。 1.单分支if语句 语句格式为: if 条件 语句组 end 当条件成立时,则执行语句组,执行完之后继 续执行if语句的后继语句,若条件不成立,则 直接执行if语句的后继语句