版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、matlab matlab 程序设计程序设计matlab 编程语言的特点编程语言的特点l 程序简洁程序简洁l 可读性很强可读性很强l 调试容易调试容易l 编程效率高编程效率高l 易移植和维护易移植和维护一、一、m m文件文件 用用 matlab 语言编写的程序,语言编写的程序,称为称为 m文件。文件。m 文件可以根据文件可以根据调用方式的不同分为两类:调用方式的不同分为两类:u 脚本文件脚本文件( (script file) )u 函数文件函数文件( (function file) )脚本文件的脚本文件的特点:特点: 它只是一串它只是一串 matlab 指令集合。指令集合。 命令文件运行后,产
2、生的所有变量都驻留在命令文件运行后,产生的所有变量都驻留在 matlab 工作空间(工作空间(workspace)中。只要用)中。只要用户不使用户不使用 clear 指令加以清除,只要指令加以清除,只要 matlab 指令窗不关闭,这些变量将一直保存在工作空指令窗不关闭,这些变量将一直保存在工作空间中。只有当关闭间中。只有当关闭 matlab 时,该空间才被删时,该空间才被删除。除。 适用于小规模运算适用于小规模运算例例1、建立脚本文件和函数文件,将华、建立脚本文件和函数文件,将华 氏温度氏温度 f 转换为摄氏温度转换为摄氏温度 c,转化公式为,转化公式为脚本文件脚本文件clear; f=in
3、put(请输入华氏温度:请输入华氏温度:);c=5*(f-32)/9input函数:从键盘输入数据并赋给相应的变函数:从键盘输入数据并赋给相应的变 量,调用格式为:量,调用格式为: a=input(提示信息,选项提示信息,选项); 其中提示信息为一个字符串,用于提示用户输其中提示信息为一个字符串,用于提示用户输入什么样的数据。入什么样的数据。 如果在如果在 input 函数调用时采用函数调用时采用 s 选项,则允选项,则允许用户输入一个字符串。例如,想输入一个人许用户输入一个字符串。例如,想输入一个人的姓名,可采用命令:的姓名,可采用命令:name = input(whats your nam
4、e?,s);编写编写 m 文件的注意要点:文件的注意要点: 标点符号的运用要恰到好处标点符号的运用要恰到好处 建立好的书写风格,保持程序的可读性建立好的书写风格,保持程序的可读性 不要忘记文件的扩展名为不要忘记文件的扩展名为 .m函数文件函数文件结构特点结构特点function 输出形参表输出形参表=函数名函数名(输入形参表输入形参表) 注释说明部分注释说明部分 函数体语句函数体语句以以function开头的一行为引导行,表示该开头的一行为引导行,表示该m文文件是一个函数文件。件是一个函数文件。函数名的命名规则与变量名相同。函数名的命名规则与变量名相同。当输出形参多于一个,则应该用方括号括起当
5、输出形参多于一个,则应该用方括号括起来。来。例例2、将例、将例 1 写成函数文件的形式写成函数文件的形式. function c=f2c(f)% 将华氏温度转化成摄氏温度将华氏温度转化成摄氏温度c=5*(f-32)/9;注意:把该文件保存在注意:把该文件保存在 work 文件夹下,文件夹下, 并且命名为并且命名为 f2c.m, 而且可以使用而且可以使用 help 找找到该函数到该函数.函数文件的注意事项:函数文件的注意事项:u可以实现参数传递可以实现参数传递 u可以有返回值可以有返回值, ,也可以无返回值也可以无返回值, ,只保留结果只保留结果, ,不保留过程不保留过程u 要特别注意文件名与函
6、数名的一致,命名要特别注意文件名与函数名的一致,命名时不要和时不要和 matlab 中的内部函数冲突中的内部函数冲突u function 后的语句定义函数名和输入输出后的语句定义函数名和输入输出参数,在函数调用过程中将按此输入输出格参数,在函数调用过程中将按此输入输出格式进行式进行u函数文件中的变量都是局部变量,只在本函函数文件中的变量都是局部变量,只在本函数文件中才有效,当函数文件执行完成后,数文件中才有效,当函数文件执行完成后,这些变量将被清除。这些变量将被清除。二、程序设计结构二、程序设计结构三种基本程序结构三种基本程序结构: :顺序结构顺序结构:按程序语句的顺序逐个执按程序语句的顺序逐
7、个执行。行。 选择结构:选择结构:按设定的条件实现程序执按设定的条件实现程序执行流的多路分支。行流的多路分支。 循环结构:循环结构:按给定的条件重复地执行按给定的条件重复地执行指定的程序段或模块指定的程序段或模块1 1、选择结构、选择结构 (1) if 语句语句 在在 matlab 中,中,if 语句有语句有 3 种格式。种格式。 (i) 单分支单分支 if 语句:语句: if 条件条件 语句组语句组 end 当条件成立时,则执行语句组,执行完之当条件成立时,则执行语句组,执行完之后继后继 续执行续执行 if 语句的后继语句,若条件不语句的后继语句,若条件不成立,则直接执行成立,则直接执行 i
8、f 语句的后继语句。语句的后继语句。(ii) 双分支双分支 if 语句:语句: if 条件条件 语句组语句组 1 else 语句组语句组 2 end 当条件成立时,执行语句组当条件成立时,执行语句组 1,否则执,否则执行语句组行语句组 2,语句组,语句组 1 或语句组或语句组 2 执行后,执行后,再执行再执行 if 语句的后继语句。语句的后继语句。例例3 3、计算下列分段函数的函数值、计算下列分段函数的函数值x=input(请输入请输入 x 的值的值:);if x=0 y= (x+sqrt(pi)/exp(2);else y=log(x+sqrt(1+x*x)/2;endy(iii) 多分支多
9、分支if语句:语句:if 条件条件1 语句组语句组1 elseif 条件条件2 语句组语句组2 elseif 条件条件m 语句组语句组m else 语句组语句组n end语句用于实现多分支选择结构。语句用于实现多分支选择结构。(2) switch语句语句 switch 语句根据表达式的取值不同,分别执行语句根据表达式的取值不同,分别执行不同的语句,其语句格式为:不同的语句,其语句格式为: switch 表达式表达式 case 表达式表达式1 语句组语句组1 case 表达式表达式2 语句组语句组2 case 表达式表达式m 语句组语句组m otherwise 语句组语句组n end 当表达式的
10、值等于表达式当表达式的值等于表达式 1 的值时,执行的值时,执行语句组语句组 1,当表达式的值等于表达式,当表达式的值等于表达式 2 的值的值时,执行语句组时,执行语句组 2,当表达式的值等于,当表达式的值等于表达式表达式 m的值时,执行语句组的值时,执行语句组 m,当表达,当表达式的值不等于式的值不等于case 所列的表达式的值时,所列的表达式的值时,执行语句组执行语句组 n。当任意一个分支的语句执行。当任意一个分支的语句执行完后,直接执行完后,直接执行switch语句的下一句语句的下一句.例例4、输入一个月份,判断季节、输入一个月份,判断季节. month=input(请输入一个月份:请输
11、入一个月份:); switch month case3,4,5 disp(spring) case6,7,8 disp(summer) case9,10,11 disp(autumn) otherwise disp(winter) end2 2、循环结构、循环结构(1) for 语句语句 for 语句的格式为:语句的格式为: for 循环变量循环变量=表达式表达式1:表达式表达式2:表达式表达式3 循环体语句循环体语句 end 其中表达式其中表达式 1 的值为循环变量的初值,表达式的值为循环变量的初值,表达式 2 的值为步长,表达式的值为步长,表达式 3 的值为循环变量的终的值为循环变量的终值
12、。步长为值。步长为 1 时,表达式时,表达式 2 可以省略可以省略例例5、用循环语句实现、用循环语句实现累加累加和和累乘(常用结构)累乘(常用结构)(1)1+3+5+99(2)计算)计算 10!(1)m=0; for i=1:2:99 m=m+i; end m(2) m=1; for i=1:10 m=m*i; end m(2) while语句语句 while语句的一般格式为:语句的一般格式为: while (条件条件) 循环体语句循环体语句 end 其执行过程为:若条件成立,则执行循环其执行过程为:若条件成立,则执行循环体语句,执行后再判断条件是否成立,如体语句,执行后再判断条件是否成立,如
13、果不成立则跳出循环。果不成立则跳出循环。例例6 6、利用、利用 while 语句计算例语句计算例5.5.(1 1) m=0; i=1; while i=99 m=m+i; i=i+2; end m(2) m=1; i=1; while i=10 m=m*i; i=i+1; end m(3)break 语句和语句和 continue 语句语句l 与循环结构相关的语句还有与循环结构相关的语句还有 break 语句和语句和continue 语句。它们一般与语句。它们一般与 if 语句配合使用。语句配合使用。l break 语句用于终止循环的执行。当在循环体语句用于终止循环的执行。当在循环体内执行到该
14、语句时,程序将跳出循环,继续执内执行到该语句时,程序将跳出循环,继续执行循环语句的下一语句。行循环语句的下一语句。l continue 语句控制跳过循环体中的某些语句。语句控制跳过循环体中的某些语句。当在循环体内执行到该语句时,程序将跳过循当在循环体内执行到该语句时,程序将跳过循环体中所有剩下的语句,继续下一次循环。环体中所有剩下的语句,继续下一次循环。例例7、求、求 100,200 之间第一个能被之间第一个能被 21 整整除的整数除的整数 for n=100:200 if mod(n,21)=0 continue end break end n例例8(一个综合练习)(一个综合练习) 猜数游戏。首先由计算机产生猜数游戏。首先由计算机产生1,100 之间的随机整数,然后由用户之间的随机整数,然后由用户猜测所产生的随机数。根据用户猜测的猜测所产生的随机数。根据用户猜测的情况给出不同提示,如猜测的数大于产情况给出不同提示,如猜测的数大于产生的数,则显示生的数,则显示“high”,小于则显示,小
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年大学大四(电子信息工程)电子信息综合实训阶段测试题及答案
- 百事可乐(中国)秋招笔试题及答案
- 2026年危险废物规范化管理培训考核试题及答案
- 2026中国节能环保校招面试题及答案
- 2026中国建筑集团校招面试题及答案
- 2026中国海洋石油招聘面试题及答案
- 2026年医疗废物管理规定题库及答案
- 水泥的采购协议
- 服装外销合同模板(3篇)
- 兰州现代职业学院《世界史通论》2024-2025学年第二学期期末试卷
- 信息互动视角下的突发公共事件网络舆情负面影响管理
- 数字领域的国际贸易新规则与数字贸易发展
- 果切培训课件
- 加油站设备基础管理培训课件
- 2025国网吉林喆森产业管理有限公司附属子公司高校毕业生招聘54人模拟试卷及参考答案详解
- 试车安全操作规范培训课件
- 旋喷桩施工安全培训课件
- 公安执法规范教学课件
- 内蒙古建筑职业技术学院单招数学题库及参考答案详解(综合卷)
- 医院处方点评规范
- 国家自然博物馆试题带答案
评论
0/150
提交评论