电脑应用_matlab程序基础_第1页
电脑应用_matlab程序基础_第2页
电脑应用_matlab程序基础_第3页
电脑应用_matlab程序基础_第4页
电脑应用_matlab程序基础_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1> m文件创建m文件:在命令窗口输入edit,或者在左侧的current folder中点右键, 选择new file,再选择scripto保存其中的内容的快捷键为:ctrl+s(很多软件都 使用此快捷键)为了代替在命令窗i l(command window)中逐条输入命令(在命令窗i i逐条输入 命令很麻烦,每次换行需要用到shift+enter), 一般将所冇需要的命令等一次性 写入m文件,然后直接在命令窗口中输入m文件的文件名后,matlab会执行 m文件ip的所有命令,命令窗口会等到m文件屮的最后一条命令执行完成后 才能再次从终端(比如键盘输入)获取命令。例如新建一个m文件,内

2、容如卜for i=l:5pause (1);end保存之后(假设文件名为sleep.m),在命令窗口直接输入sleep后回车,命令窗 i i将在5秒后才能接收新的命令,在此5秒内输入的任何命令都将先暂时保存, 等待以上语句执行完毕后才会开始执行。强制屮断组合键为:ctrl+c如以下函数绘图x=-0.99:.01:0.99;y=-(x+x八2/2+乂人3/3+x人4/4+x人5/5+x"6/6+x八7/7+乂人8/8);plot(x,y,1r.1);hold on;yl=log(1-x);plot(x,yl);legend(1y1f yl1);1、变量的命名matlab中的变量的命名必

3、须以字母开头,且区分大小写,其间不能有空格、 中文、标点符号,并且不能与matlab中已有的函数名、命令名、特殊变量、 关键字等相同。特殊变量:ans、pi、inf、nan/nan> i/j、nargin、realmin、realmax> flintmax> intmax> intmin等,原则上不用作函数名,例如pi,表示圆周率,但可以强行 赋予其他的值,例如pi=l; clear=l;等关键字:if、else> else讦、while> for、break、continue> return 、end、switch 、 case try、catch&

4、gt; function、globak otherwiseparfor> persistent、spmd 不 能作为变量名。2、in putvalue=input(,tips,);将输入内容赋值给变量valuevalue=input(ztips7s,);将输入内容以字符串的形式赋值给变量valuetips是显示在屏幕上的提示信息 例女i丨value=input('input a number/);value=input('input sth:7sz);if-else 结构if expressi oncomma ndlcomma nd2若 expression 为真,贝ij

5、执彳亍 commandl, command2elsecomma nd3comma nd4否则,执行 command3, command4end结束if expressionlcomma ndl若 expressionl 为真,则执行 commandlelse 讦 expressi on2comma nd2否则,若expression?为真,则执行command2else 讦 expressiocomma否则,若expression3为真,则执行command3 else if expression(k) comma ndnelse否则,若 expression(k)为真,则执command(n

6、)comma nd(k+l.)否则,执行 command(k+l)3、例符号函数 x=input('input x二');if (x>0)sgn=l;elseif (x<0)sgn=-l;elsesgn=o;enddisp (sgn= * r num2str (sgn); 需要回显运算结果 fprintf ( 1 sgn=%fn * , sgn);需要凹显运算结果4、switch-case 结构swith valuecase valuelcommandl若value等于valuel,则执行commandl后结束整个结构。 case value2command2若va

7、lue等于value2,则执行command2后结束整个结构。 case value(n)command(n)若 value 等于 value(n),则执行 command(n)ju结束整个结构。 otherwisecommand 若value不等于之而所有的值,则执彳亍command后结束结构。 例day=input(* input 1-7?1);switch daycase 1d=1 monday 1case 2d=1 tuesday *case 3d=1 wednesday 1case 4d='thursday 1case 5d=1 friday 1case 6d= * satu

8、rday 1case 7d=1 sunday fotherwised=*'endfprintf(1 today is %sn *,d);disp(1 today is 1z d);5、while循环结构该结构在执行commands之;而会先检测expression是否为真,若为真,则执行 commands,执行完commands 一次之后会继续检测expression是否为真,若为 真则再执行commands,直到某次检测到expression为假,此时不执彳亍commands, 而是直接endo由于会循环的去检测expression,所以会在while与end z间不 断的循环,循环

9、的次数由expression的真假决定while expressioncomma ndsend例a=l;sum=0;while a<=100sum=sum+a;a=a+l;enddisp(1sum=1z num2str (sum);例:求使得l2+22 + 32+n210000的最大的整数n(使得1+2 + 3+. . .+n<=10的最大的整数n)a=l;sum=0;while sum<=10sum=sum+a;a=a+l;enddisp(a);while:避免死循环,注意端点值(跳出循坏时)6、for循环结构for var=a:step:b %以 a, b 为区间端点,s

10、tep 为步长 for var=l:0.1:2comma ndsend(var=a:step:b 以a, b为区间端点,step为步长,例如var=l:l:10表示var的值 从1逐个取到10)循环次数二例sum=0;for a=l: 100% (默认步长为1)sum=sum+a;enddisp ( 1 sum= 1 f num2str (sum);for循环与while循环:for循环的循环次数固定,while循环也适用于循环次数未知的情形。7、break 与 continue 语句break语句用于跳出当前循环例a=0;sum=0;while a<=100a=a+l;if a>

11、=50break;endsum=sum+a;enddisp(1sum=1,num2str (sum);continue语句用于跳过本次循环中continue语句后的所有语句,直接开始下一轮 循环例a=0;sum=0;while a<=100a=a+l;if a>=50continue;endsum=sum+a;enddisp ( 1 sum= 1 , num2str* (sum);8、函数 类似j 'matlab自带的函数,$llsinz cos, factorial等,我们可以自己编写具 冇自己需耍的功能的函数例如,自定义一个能够画出任意指定区间内正弦函数图像的函数function myplot(a,b)x=a: (b-a)/100:b;plot(x,sin (x);将以上文木保存为m文件,然后再命令窗口输入myplot (-pi, pi),则会luli出 -pi到pi之间的正弦函数图像。plot函数接收x与y的值,然后画出图像,与 plot (x, y)类似,myplot函数接收区间的两个端点值a, b,其中a=-pi, b=pi, 然后交给函数内部自己处理,最后输出

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论