简单for循环

for循环用来循环处理数据。
例:输出1~100的和

>> clear
>> sum = 0;
>> for i = 1:100
       sum = sum +i;
   end
>> sum

sum =

        5050

解释:i从1到100,每次增加一个,该共循环100次
注意:分号的位置;不能使用“+=”符号;每写一层循环,必须以end结尾

带有步长的for循环

例:输出1到10之间的奇数和


>> clear
>> sum = 0;
>> for i = 1:2:10
       sum = sum + i;
   end
>> sum

sum =

    25

解释:i = 1:2:10中间的2表示步长,表示从1到10,每次增加2,即1,3,5,7,9五个数之和;步长也可以为负数

对向量和矩阵的遍历

  1. 对向量的遍历
>> clear
>> A = rand(1,4);
>> for i = A
       i
   end

i =

    0.9572


i =

    0.4854


i =

    0.8003


i =

    0.1419

解释:rand函数用于随机生成0~1之间的数,rand(1,4)生成1*4的列向量。

  1. 对矩阵的遍历
>> A = magic(4);
>> A

A =

    16     2     3    13
     5    11    10     8
     9     7     6    12
     4    14    15     1

>> for i = A;
       i
   end

i =

    16
     5
     9
     4


i =

     2
    11
     7
    14


i =

     3
    10
     6
    15


i =

    13
     8
    12
     1

解释:magic(n)函数用于生成任意一行或一列或主副对角线之和相等的方阵,对矩阵的循环遍历是依次取出矩阵中的每一列元素

break和continue的使用

break用于终止离它最近的一层for循环;
continue用于跳过离它最近的一层for循环,接着执行下一次循环

>> x = 1;
>> for i = 1:2:10
       if i > 7
          break
       else
          x = x* i
       end
   end

x =

     1


x =

     3


x =

    15


x =

   105
>> sum = 0;
>> for i = 1:6
       if i == 4
          continue
       else
          sum = sum + i
       end
   end;

sum =

     1


sum =

     3


sum =

     6


sum =

    11


sum =

    17

多层for循环

for循环可以按照需要进行嵌套。

>> for i = 1:2:6
       for j = 1:3
           y = i * j
       end
   end

y =

     1


y =

     2


y =

     3


y =

     3


y =

     6


y =

     9


y =

     5


y =

    10


y =

    15

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐