Matlab创建M文件以及程序控制

本文详细介绍了编程中的各种控制结构如if-else、switch、try-catch,以及MATLAB中的函数文件、调用、参数传递和变量类型。还涵盖了循环结构(for、while)、异常处理、匿名函数、并发体系在Java中的应用等内容,旨在帮助程序员提升技能和理解复杂编程概念。
摘要由CSDN通过智能技术生成

在这里插入图片描述

(2) 双分支if语句:

if 条件->语句组1->else->语句组2->end

当条件成立时,执行语句组1,否则执行语句组2,语句组1或语句组2执行后,再执行if语句的后继语句。

在这里插入图片描述

(3) 多分支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

在这里插入图片描述

  • Num2cell()函数

num2cell的作用是把数值数组转换为cell数组

最基本的用法是把数值数组的每个元素作为cell数组的元素,得到一个和原数组维度完全相同的cell数组,例如:

在这里插入图片描述

3.try语句

语句格式为:try->语句组1->catch->语句组2->end

try语句先试探性执行语句组1,如果语句组1在执行过程中出现错误,则将错误信息赋给保留的lasterr变量,并转去执行语句组2。

在这里插入图片描述

2.3 循环结构

  • 1.for语句

for语句的格式1:

for 循环变量=表达式1:表达式2:表达式3->循环体语句->end

水仙花数:

在这里插入图片描述

for语句的格式2:

for 循环变量=矩阵表达式->循环体语句->end

执行过程是依次将矩阵的各列元素赋给循环变量,然后执行循环体语句,直至各列元素处理完毕。

在这里插入图片描述

  • 2.while语句

while语句的一般格式为:

while (条件)-> 循环体语句-> end

其执行过程为:若条件成立,则执行循环体语句,执行后再判断条件是否成立,如果不成立则跳出循环。

求输入的数的和,当输入0时停止在这里插入图片描述

  • 3.break语句和continue语句

与循环结构相关的语句还有break语句和continue语句。它们一般与if语句配合使用。

break语句用于终止循环的执行。当在循环体内执行到该语句时,程序将跳出循环,继续执行循环语句的下一语句。

continue语句控制跳过循环体中的某些语句。当在循环体内执行到该语句时,程序将跳过循环体中所有剩下的语句,继续下一次循环。

求[100,200]q区间内第一个能整除21的数:在这里插入图片描述

  • 4.循环的嵌套

如果一个循环结构的循环体又包括一个循环结构,就称为循环的嵌套,或称为多重循环结构。

求1-500间的完数:

在这里插入图片描述

3. 函数文件


3.1 函数文件的基本结构

  • 函数文件由function语句引导,其基本结构为:

->function 输出形参表=函数名(输入形参表)

->注释说明部分

->函数体语句

其中以function开头的一行为引导行,表示该M文件是一个函数文件。函数名的命名规则与变量名相同。输入形参为函数的输入参数,输出形参为函数的输出参数。当输出形参多于一个时,则应该用方括号括起来。

在这里插入图片描述

3.2 函数调用

  • 1.函数调用的一般格式是:

[输出实参表]=函数名(输入实参表)

要注意的是,函数调用时各实参出现的顺序、个数,应与函数定义时形参的顺序、个数一致,否则会出错。函数调用时,先将实参传递给相应的形参,从而实现参数传递,然后再执行函数的功能。

  • 2.函数的递归调用

在MATLAB中,函数可以嵌套调用,即一个函数可以调用别的函数,甚至调用它自身。一个函数调用它自身称为函数的递归调用。

在这里插入图片描述

3.3 函数参数的可调性

  • 在调用函数时,MATLAB用两个永久变量nargin和nargout分别记录调用该函数时的输入实参和输出实参的个数。只要在函数文件中包含这两个变量,就可以准确地知道该函数文件被调用时的输入输出参数个数,从而决定函数如何进行处理。

在这里插入图片描述

3.4 全局变量与局部变量

  • 函数文件中的变量是局部的,即在一个函数文件中定义的变量不能被另一个函数文件引用。如果在若干函数中都把某一变量定义为全局变量,那么这些函数将共用这个变量,作用域是整个工作空间,即全程有效。

全局变量用global命令定义,格式为:

global 变量名

4. 特殊形式的函数


  1. 子函数

在MATLAB中,可以在一个M文件中同时定义多个函数,其中M文件中出现的第一个函数称为主函数(primary function),其他函数称为子函数(subfunction),但需要注意的是子函数只能由同一M文件中的函数调用。在保存M文件时,M文件名一般和主函数名相同,外部程序只能对主函数进行调用。

  1. 内联函数

以字符串形式存在的函数表达式可以通过inline函数转化成内联函数。例如a=’(x+y)2’,可以通过f=inline(a)生成内联函数f(x,y)=(x+y)2。

a=’(x+y)^2’;

f=inline(a)

f =

内联函数:

f(x,y) = (x+y)^2

f(3,4)

ans =

49

  1. 匿名函数

匿名函数的基本格式如下:

匿名函数名=@(输入参数) 匿名函数表达式
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)

img

最后

很多程序员,整天沉浸在业务代码的 CRUD 中,业务中没有大量数据做并发,缺少实战经验,对并发仅仅停留在了解,做不到精通,所以总是与大厂擦肩而过。

我把私藏的这套并发体系的笔记和思维脑图分享出来,理论知识与项目实战的结合,我觉得只要你肯花时间用心学完这些,一定可以快速掌握并发编程。

不管是查缺补漏还是深度学习都能有非常不错的成效,需要的话记得帮忙点个赞支持一下

整理不易,觉得有帮助的朋友可以帮忙点赞分享支持一下小编~
《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》点击传送门即可获取!
把私藏的这套并发体系的笔记和思维脑图分享出来,理论知识与项目实战的结合,我觉得只要你肯花时间用心学完这些,一定可以快速掌握并发编程。

不管是查缺补漏还是深度学习都能有非常不错的成效,需要的话记得帮忙点个赞支持一下

整理不易,觉得有帮助的朋友可以帮忙点赞分享支持一下小编~
《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》点击传送门即可获取!

  • 14
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值