没有合适的资源?快使用搜索试试~ 我知道了~
Matlab编程和其他语言的区别.pdf
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 29 浏览量
2022-11-12
08:24:57
上传
评论
收藏 464KB PDF 举报
温馨提示
![preview](https://dl-preview.csdnimg.cn/86965959/0001-ed840ffcc0075adcbb4fc0c151e3ae72_thumbnail.jpeg)
![preview-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/scale.ab9e0183.png)
试读
11页
。。。
资源推荐
资源详情
资源评论
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![gz](https://img-home.csdnimg.cn/images/20210720083447.png)
![xlsx](https://img-home.csdnimg.cn/images/20210720083732.png)
![pptx](https://img-home.csdnimg.cn/images/20210720083543.png)
![pptx](https://img-home.csdnimg.cn/images/20210720083543.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/release/download_crawler_static/86965959/bg1.jpg)
Matlab 编程和其他语言的区别
一、字符和字符串
在 MATLAB 中不管是字符,还是字符串都是用单引号。而在 C、C++、C#、Java 等语言中,
字符是用单引号的,字符串则必须用双引号。因此在 MATLAB 中如果需要在字符串中用到单
引号的话,就要用两个单引号来代替。
如:
>> a='this''is an apple'
a =
this'is an apple
同理,如果字符串中需要双引号的话,可以用四个单引号来代替。如下:
>> b='I''''am Tim'
b =
I''am Tim
在 MATLAB 中的字符串连接,我们可以使用一对中括号。当然,这种连接方式也适用于向量、
矩阵等的连接。如下:
>> c=[a b]
c =
this'is an appleI''am Tim
>> a1=[1 2];b1=[3 4];
>> c1=[a1 b1]
c1 =
1 2 3 4
>> c2=[a1;b1]
c2 =
1 2
3 4
但是,对于字符串的连接不能使用加号(+)来进行。这点和在 C++、C#、Java 等语言中是
不一样的。因为在 MATLAB 中这些字符串也是以矩阵的形式存储的,你要是用加号的话,需
要两个矩阵的大小一致。比如:
>> a2='hello';b2='mustb';
>> a2+b2
ans =
213 218 223 224 209
但是,很明显,加完之后都是一系列的值了。本来,这些字符串也是以数值的形式存储的。
而我们要取的字符串中某一个字符的时候,也是很方便的,直接像引用矩阵的元素一样。如
下:
>> a2(1)
ans =
h
>> a2(4)
ans =
l
>> find(a2>'i')
![](https://csdnimg.cn/release/download_crawler_static/86965959/bg2.jpg)
ans =
3 4 5
可以看到,a2 里面在字母 i 后面的字符有第 3、4、5 个字符,也就是 llo 了。
在 MATLAB 中要将一个数字转换为字符可以用 num2str,将字符转换为数字可以用 str2num。
如下:
>> stra1=num2str(a1)
stra1 =
1 2
>> class(stra1)
ans =
char
>> strb1='[3 4]';
>> str2num(strb1)
ans =
3 4
对于 strb1,我们可以使用 eval 函数,该函数可以将字符串作为一个 MATLAB 命令去执行。
如下:
>> p=eval(strb1)
p =
3 4
相当于 p=[3 4]。
当然了,C 语言里面的 sprintf、fprintf 函数我们都是可以在 MATLAB 中使用的。比如:
>> sprintf('Tim is %d years old.',24)
ans =
Tim is 24 years old.
至于 fprintf 函数,则需要用 fopen 去打开一个文件,然后写入数据进去。如下:
>> fd=fopen('a.txt','w+');
>> fprintf(fd,'I am Tim.\n');
>> fprintf(fd,'My age is %d\n',24);
>> fclose(fd);
然后,用 MATLAB Editor 打开 MATLAB 当前目录下的 a.txt 就可以看到:
但是,当你用记事本打开的时候会看到:
![](https://csdnimg.cn/release/download_crawler_static/86965959/bg3.jpg)
这是因为在 Windows 上要想换行需要\r\n,而不能单是\n。
二、if 语句、for 语句、switch 语句、while 语句、try-catch 语句都以 end 结尾
在 MATLAB 中,没有 goto 和 do…loop 和 do…while 语句。而且语句的结尾都是以 end 结尾的。
>> t=4;
>> if(t<5),disp('t is smaller than 5.'),end
t is smaller than 5.
当然,if 语句也可以有 else 语句。
>> if(t>5),disp('t is bigger than 5.'),else,disp('t is smaller than 5.'),end
t is smaller than 5.
还可以用 elseif。
>> if(t>5),disp('t is bigger than 5.'),elseif(t==5),disp('t is equal 5.'),else,disp('t is smaller than
5.'),end
t is smaller than 5.
在 MATLAB 中,由于矩阵的索引都是从 1 开始的,这点和 C、C++、C#、JAVA等语言是不一
样的。所以,在循环的时候建议从 1 开始循环,而且循环的时候不推荐用变量 i 和 j。因为
这两个变量在 MATLAB 中表示的是复数的虚部变量。当然,如果你的程序里面没有复数,就
不用怕。如果有复数,就要小心了。
之所以从 1 开始,是因为大多数时候我们使用循环是为了依次能访问到矩阵的每一个元素,
所以,如果矩阵的索引出现了 0,那么就会报出错误。所以,从1 开始循环,是一种很好的
习惯,而不是要求你必须这样做。
而且,在 for 循环中,你的循环变量不仅可以是一个数,也可以是一个向量。看下面的程序:
>> aa=[1 2;3 4; 5 6;7 8];
>> for i=aa,disp(i),end
1
3
5
7
2
4
6
8
>> aa
aa =
1 2
3 4
5 6
剩余10页未读,继续阅读
资源评论
![avatar-default](https://csdnimg.cn/release/downloadcmsfe/public/img/lazyLogo2.1882d7f4.png)
![avatar](https://profile-avatar.csdnimg.cn/dfba069df9d743e89798b70d3e80af24_xxpr_ybgg.jpg!1)
xxpr_ybgg
- 粉丝: 6561
- 资源: 3万+
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![voice](https://csdnimg.cn/release/downloadcmsfe/public/img/voice.245cc511.png)
![center-task](https://csdnimg.cn/release/downloadcmsfe/public/img/center-task.c2eda91a.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![dialog-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/green-success.6a4acb44.png)