世界杯2022是哪个国家_国足世界杯出线 - dtfyjq.com

  • 首页
  • 北京世界杯
  • 世界杯新秀
  • 世界杯16强名单

最新发表

  • 发别人裸照的具体判刑标准是什么?会考虑哪些因素?-法律知识
  • 苓的解释
  • 《魔兽世界》正式服翡翠梦境任务全流程完成攻略
  • 【科普100秒】为什么泡面一定要泡3分钟?泡5分钟就不好吃了吗?真相来了
  • 晈面什么什么四字成语
  • 一节钢琴课收费多少钱合适?价格一览表,不要再乱花钱了
  • 2024选择适合的公共DNS
  • 安卓软件
  • h5魔塔网页加载不出来怎么办?
  • 正在阅读:如何将文件上传到微云?文件上传送的步骤如何将文件上传到微云?文件上传送的步骤

友情链接

Copyright © 2022 世界杯2022是哪个国家_国足世界杯出线 - dtfyjq.com All Rights Reserved.

MATLAB基础——关于数组(一)

世界杯16强名单 · 2025-07-18 00:14:39

变量和数组

MATLAB程序的基本数据单元是数组,标量在MATLAB中也被当做数组来处理

数组可以定义为向量(一般描述为一维数组)或矩阵(一般描述为二维或多维)

访问数组中的元素:数组名+()

MATLAB变量名的命名:以字母开头,可跟字母、数字、下划线,只有前31个字符有效

区分字母的大小写

强类型语言

像C语言一样:

int a;

double b;

弱类型语言

像Matlab、Python一样:

c = 'l am a student'

% 不需要给变量设定一个变量类型

% 而只需通过复制形式创建类型,且变量类型取决于创建时的类型

变量的初始化

赋值语句初始化

input函数从键盘输入初始化变量

ans=0 说明输入的不是一个整形

从文件读取一个数据

赋值输入

一个数组的每行元素的个数必须完全相同,每一列元素的个数也必须完全相同

对数组中元素的访问,采用 数组名 (number)的形式,number是从1开始。

a1=[0,2,4];

b=[a1(2) a1];

b

b =

2 0 2 4

定义数组的时候不是每个元素都要定义

c(2,3)=5

c =

0 0 0

0 0 5

指定数组中的一个元素赋值,其余默认为零

如果给一个数组赋值的元素超出了数组的大小的话,会新创一个数组(语文水平不高,还是matlab菜鸟,见谅,不懂看一下代码就晓得了)

d=[1,4]

d =

1 4

d(3)=8

d =

1 4 8

每个语句的末尾分号用来紧致变量值在命令窗口的重复

表达式赋值

matlab中的克隆运算符为:first:incr:last(起始位置,步长,终止位置)

x=1:2:10

x =

1 3 5 7 9

类似于Python中的切片

a = [1,2,3,4,5,6,7,8]

for i in a[::-1]:

print(i)

结果为:8 7 6 5 4 3 2 1

但是Python中的第一个是起始位置,第二个是终止位置,最后一个是步长

matlab中的0.01表示注意

x=(.01:.01:.1)*pi

% 该式子的起始是0.01 步长为0.01,终止位置为0.1

x =

1 至 8 列

0.0314 0.0628 0.0942 0.1257 0.1571 0.1885 0.2199 0.2513

9 至 10 列

0.2827 0.3142

转置运算符 '(英文单引号)

d=[1:5]

d =

1 2 3 4 5

h=[d’]

h =

1

2

3

4

5

zeros函数(全零矩阵)

a=zeros(2)

a =

0 0

0 0

% 如果只有一个参数则生成n阶矩阵,如果给了m,n两个参数则生成mXn矩阵

b=zeros(2,4)

b =

0 0 0 0

0 0 0 0

ones(n) and one(m,n)

一个参数,生成n阶一矩阵

两个参数,生成mXn矩阵,eye函数相同

创建一个全1矩阵

a=ones(3)

a =

1 1 1

1 1 1

1 1 1

a=ones(3,4)

a =

1 1 1 1

1 1 1 1

1 1 1 1

b=eye(2)

eye(n) and eye(m,n)

生成单位矩阵

b =

1 0

0 1

b=eye(2,3)

b =

1 0 0

0 1 0

向量或数组的长度(取最大值)

length(b)

ans =

3

size(矩阵的大小)

size(b)

ans =

2 3

矩阵、数组、向量

A=[1,2;3,4;5,6]

A =

1 2

3 4

5 6

B=[1,2,3,4]

B =

1 2 3 4

C=[B’]

C =

1

2

3

4

A是2X3的矩阵,B是一个一维行向量,C是一个一维行向量

多维数组

c(:,:,1)=[1,2,3;4,5,6]

c1(:,:,2)=[1,2,3;4,5,6]

c =

1 2 3

4 5 6

whos c

Name Size Bytes Class Attributes

c 2x3 48 double

c1(:,:,2) =

1 2 3

4 5 6

whos c1

Name Size Bytes Class Attributes

c1 2x3x2 96 double

MATLAB中以列主导顺序分类数组中的元素

a=[1,2,3;4,5,6;7,8,9;10,11,12]

a =

1 2 3

4 5 6

7 8 9

10 11 12

a(4)

ans =

10

a(2)

ans =

4

a(5)

ans =

2

a(1,2)

ans =

2

a(4,1)

ans =

10

数组名(object),object可以是一个数字(第几个),也可以是两个数字(几行几列)

子数组

使用克隆运算符

a(:,1:1:3)

ans =

1 2 3

4 5 6

7 8 9

10 11 12

a(:,1:2:3)

ans =

1 3

4 6

7 9

10 12

a(:,1:3:3)

ans =

1

4

7

10

a(1,:)

ans =

1 2 3

a(2,:)

ans =

4 5 6

a(3,:)

ans =

7 8 9

a(4,:)

ans =

10 11 12

a(5,:)

索引超出矩阵维度。

a(:,1)

ans =

1

4

7

10

a(:,2)

ans =

2

5

8

11

a(:,3)

ans =

3

6

9

12

a(:,4)

索引超出矩阵维度。

end函数

a

a =

1 2 3

4 5 6

7 8 9

10 11 12

a(3:end,3:end)

ans =

9

12

这里的a(行,列),类似于Python中的索引(切片)

x=[1,2,3,4,5,6,7,8]

print(x[3:])

将会从下标为3的元素开始直到结束

更改数组元素的值

子数组赋值只会改变部分值,如果直接赋值则会先把该数组原有内容删除,再赋新值

a

a =

1 2 3

4 5 6

7 8 9

10 11 12

a(1:3,[2,3])=[22,33;55,66;88,99]

% 1:3 表示1到3行,[2,3]表示2到3列剩下的为更换的值,更换的值也可以用一个数字表示,则所要更改的元素都为该数字

a =

1 22 33

4 55 66

7 88 99

10 11 12


智联招聘如何投简历 投简历方法详解
大年三十开除创业元老 王石辞退员工做了最错误的决定