当前位置:文档之家› matlab基本语句(可编辑修改word版)

matlab基本语句(可编辑修改word版)

第2章MATLAB 程序设计MATLAB 语言为解释型程序设计语言。

在程序中可以出现顺序、选择、循环三种基本控制结构,也可以出现对M-文件的调用(相当于对外部过程的调用)。

由于 MATLAB 开始是用 FORTRAN 语言编写、后来用C 语言重写的,故其既有 FORTRAN 的特征,又在许多语言规则方面与 C 语言相同。

2.1顺序结构语句在顺序结构语句中,包括表达式语句、赋值语句、输入输出语句、空语句等。

2.1.1表达式语句格式:表达式,%显示表达式值表达式;%不显示表达式值表达式%显示表达式值如:x+y,s i n(x);–5最后的表达式值暂保存在变量 ans 中。

2.1.2赋值语句格式:v=表达式,%结果送 v 并显示 v v=表达式;%结果送 v 不显示 v v=表达式%结果送 v 并显示 v 2.1.3空语句格式:,;2.1.4输入语句1、i n p u t语句(实际上是函数)格式 1:i n p u t(提示字符串)功能:显示提示字符串,可输入数字、字符串(两端用单引号括起)、或表达式格式 2:i n p u t(提示字符串,'s')功能:显示提示字符串,并把输入视为字符串2、y e s i n p u t语句格式:y e s i n p u t(提示字符串,缺省值,值范围)功能:显示提示字符串和缺省值,若只打入回车则以缺省值作为输入值,若输入的值不在指定范围内则认为输入无效,B 并等待用户重新输入。

如:t=y e s i n p u t('指定线的颜色',…'r e d','r e d|b l u e|g r ee n')运行结果如下:指定线的颜色(red):yellow %不在值内指定线的颜色(red):blue %重输t =b l u ex=y e s i n p u t('输入元素个数',10,[1,20])运行结果如下:输入元素个数(10):x =103、Keyboard 语句格式:Keyboard功能:暂停M-文件的执行,并等待用户从键盘输入命令以查看或改变变量的值,直到输入return 命令而返回相应的 M-文件继续执行。

本语句用于调试 M-文件。

4、pause 语句格式 1:pause功能:暂停,敲下任一键继续格式 2:pause(n)功能:暂停 n 秒格式 3:puase on功能:本命令后的 pause 语句有效格式 4:pause off功能:本命令后的 pause 语句无效5、menu 语句格式:m e nu('菜单名',S1,S2,…,S k)功能:生成一个按钮式菜单系统其中:字符串S1,S2,…,S k为菜单项(K≤32)。

函数返回值为用户选中的菜单项号。

如M-文件,m e nu_d.m如下:%选择一种颜色w h il e1k=m e nu('选择一种颜色','红色',…'黄色','兰色','绿色','白色','关闭');i f k==1c o l o r='R e d'elseif k==2c o l o r='Y e ll o w'elseif k==3c o l o r='B l u e'elseif k==4c o l o r='G r ee n'elseif k==5c o l o r='W h i t e'elseif k==6breakendend2.1.5输出语句1、直接终端显示当一个表达式、赋值语句等语句用逗号或者回车作为结尾符,而不是分号作为结尾符时,该表达式或赋值语句的运行结果均在终端上显示出来。

2、d i a r y语句(日记)格式 1:d i a r y文件名功能:打开指定的文件并将该语句之后终端显示的内容(包括键入的命令和输出结果)记入该文件。

格式 2:d i a r y o ff功能:暂停记入显示内容到指定的文件格式 3:d i a r y o n功能:继续记入显示内容到指定的文件d i a r y语句可产生一个日志文本文件,为以后书写报告或编辑 M-文件提供素材。

3.d i s p语句格式:d i s p(x)功能:显示 x 的值,但不显示 x 的名4.s printf 语句格式:[Str,ErrMsg] = SPRINTF(格式串,表达式1,...)其中:格式串与C 语言的规定一致Str 存放结果的功能:按照格式串的规定把各表达式的实部分别转换为字符串并存入Str,若有错误,则把错误信息存入ErrMsg如:sprintf('%0.5g',(1+sqrt(5))/2) 1.618sprintf('%0.5g',1/eps) 4.5036e+15sprintf('%15.5f',1/eps) 4503599627370496.00000 sprintf('%d',round(pi)) 3sprintf('%s','hello') hellosprintf('The array is %dx%d.',2,3) The array is 2x3.sprintf('\n') 换行2.1.6变量值的保存与恢复1、保存工作空间中的变量到文件中格式 1:save 文件名功能:保存工作空间中的全体变量到指定文件(扩展名设定为.m a t)中。

若省略文件名,则文件名缺省为"M A T L A B.m a t"。

该文件为二进制格式,称为MAT文件。

格式 2:save 文件名变量名表[-append]功能:保存指定的变量到文件中。

变量名表中两变量之间用逗号或空格分开。

格式 3:save 文件名变量名表-ascii [-tabs]功能:用 8 位数、ASCII 码格式保存指定的变量到文件中。

格式 4:s ave文件名变量名表-a s c ii–d o u b l e[-t a b s]功能:用 16 位数、ASCII 码格式保存变量到指定文件中。

2、保存工作空间中的变量到 C 风格文件中相关语句 ( 后面详介):fid=fopen(文件名,权限串) fwrite(fid,表达式,精度串)%二进制fprintf(fid,格式串,表达式) fclose(fid)3、恢复变量到工作空间格式 1:l o a d功能:从"M A T L A B.m a t"文件中恢复变量格式 2:l o a d文件名功能:从指定文件中恢复变量格式 3:l o a d文件名-a s c ii功能:从无扩展名的文本文件中生成一个以文件名为变量名的数组(文件中含有m 行、n 列数据)。

格式 4:l o a d文件名.扩展名-m a t功能:从具有指定扩展名的MAT 文件中恢复变量。

格式5:l o a d文件名.扩展名功能:从具有指定扩展名的文本文件生成与文件名同名的数组(文件中含有m 行、n 列数据)。

例如:设文本文件c o ff.t x t中的数据为:1,2,3,4,56,7,8,9,10执行命令l o a d c o ff.t x t则命令coff将显示coff=12345678910格式 6:[A,C o un t]=f r ea d(f i d,s i z e,p r e c i s i o n)[A,Count] = fscanf(fid,format,size)其中:p r e c i s i o n可为:M A T L A B C o r F o r t r a n D e s c r i p t i o n'u c h a r''un s i g n e d c h a r'un s i g n e d c h a r a c t e r,8b i t s.'s c h a r''s i g n e d c h a r's i g n e d c h a r a c t e r,8b i t s.'i n t8''i n t e g e r*1'i n t e g e r,8b i t s.'i n t16''i n t e g e r*2'i n t e g e r,16b i t s. 'i n t32''i n t e g e r*4'i n t e g e r,32b i t s. 'i n t64''i n t e g e r*8'i n t e g e r,64b i t s.'u i n t8''i n t e g e r*1'un s i g n e d i n t e g e r,8b i t s.'u i n t16''i n t e g e r*2'un s i g n e d i n t e g e r,16b i t s.'u i n t32''i n t e g e r*4'un s i g n e d i n t e g e r,32b i t s.'u i n t64''i n t e g e r*8'un s i g n e d i n t e g e r,64b i t s.'s i n g l e''r ea l*4'f l o a t i n g p o i n t,32b i t s.'f l o a t32''r ea l*4'f l o a t i n g p o i n t,32b i t s.'d o u b l e''r ea l*8'f l o a t i n g p o i n t,64b i t s.'f l o a t64''r ea l*8'f l o a t i n g p o i n t,64b i t s.功能:从 C 风格文件中读入size 个数据到A,Count 为实际读入数据个数2.2选择结构2.2.1if 语句格式 1:if 表达式语句组end功能:若表达式值的实部或值为真,则执行语句组格式 2:if 表达式语句组 1else语句组 2end功能:若表达式值实部非 0 或值为真,则执行语句组1,否则执行语句组 2。

相关主题