如果 A = magic(5)
B = A(2,:) 就是把A 的5行5列的矩阵 中的第三行拿出来
那如果C=A(:,3)就是取矩阵的第三列
[m,n] = find(A > 20) 在矩阵中寻找 大于20的数值的位置 这个位置就是用m n 来表达 第几行的第几列
这里就是表是 第二行 第一列的 数大于20 以此类推 就是这个意思
逻辑与流程控制
程序结构
第一个循环结构 for循环结构
命令定义是用for 变量 = 初值 步长 终值
比如1方+2方+3方+4方+5方+6方的matlab语句是什么呢?
大家可以用计算器验证一下
还有一种就是for循环的嵌套
大家可以讨论下这个程序是想表达的是一个什么样的式子 与阶乘有关
这个其实就是 当sum=0时 i=1, 然后p = 1 然后再就进入一个循环 j=1:1 p= 11=1 sum=0+1=1
当sum=1时 i=2 然后p= 1 进入循环 j=1:2 p = 11=1 j=2 p=12=2 sum=1+2=3
当sum=3时 i=3 然后=1 进入循环 j=1:3 p=11=1 j=2 p=12=2 j=3 p=23=6 sum=3+6=9
以此类推 可以发现 其实最后求出的就是 1的阶乘+2的阶乘+3的阶乘+4的阶乘+5的阶乘的和 是 153
然后根据这个 还有个例子 就是99乘法表 大家可以做一下
for i=1:9
for j = 1:9
a(i,j) = i.*j;
end
end
然后再说下while循环
主要是 while 条件表达式 如果条件成立 直接执行 如果 不成立直接跳过
执行语句
。。
。。
。。
end
比如写一个 1+2+3+4+5+6+7
sum = 0:
n = 1;
while n<=7
s=s+n;
n=n+1;
end
分支结构
if 条件表达式 条件是真为1 假为0 1继续执行 0不执行
.
.
.
语句体
。
。
。
end
if else and 结构语句
if 表达式 if表达式成立 语句体1 成立 不成立 走语句体2 然后再走end
语句体1
else 语句体2
end
switch case
switch 表达式 数值或字符串
case 数值字符串1
语句体1
case 数值或字符串2
语句体2
。
。
。
otherwise
语句体n;
end