微信表情猜成语:for循环(特厉害的MT5/MQL5指标编程教程第十三篇:for循环结构) | 特厉害

来源:百度文库 编辑:中财网 时间:2024/04/28 17:07:58

for循环(特厉害的MT5/MQL5指标编程教程第十三篇:for循环结构)

 

程序设计的基本结构就三种:顺序结构、选择结构、循环结构,运用这三种语言结构,可以解决所有问题。而顺序结构就像说话一样一句一句往下运行,无处不在,所以在学习程序设计的初级阶段,就是学选择结构和循环结构,无论多么复杂的算法,拆分到最基础的结构,都是选择和重复。

循环结构中用得最多的是for循环,while循环与for循环本质是一样的,但是for循环写循环条件的时候格式位置比较统一,易读性较好。表达形式一般为:

for(表达式1;表达式2;表达式3){
...
}

它的执行过程如下:

  1. 求解“表达式1”。
  2. 求解“表达式2”,若结果值为“真”,则执行for循环内嵌代码块,然后执行下面第3步;若表达式值为“假”,结束循环,跳到第5步。
  3. 求解“表达式3”。
  4. 回到上面第2步继续执行。
  5. 循环结束。执行for循环后面的语句。

循环举例:

int i;
int sum = 0;
for(i=0; i<3; i++){
sum = sum + i;
}

注意:在循环使用变量“i”和“sum”之前,声明了它们,这样当循环结束后,“i”和“sum”依然存在。也可以:

int sum = 0;
for(int i=0; i<3; i++){
sum = sum + i;
}

这样当循环结束后,“i”就被释放了,节省内存空间,但是“sum”一定要在循环前声明,如果放在循环体内声明,那么相当于每次循环都重新声明变量,应该是会报错的,感兴趣可以自己试试,原理参照变量及其作用域那篇,有点类似函数,但是for循环是一个语言结构,不是函数。

以第二段为例讲解:

  1. 声明“sum”并初始化其值为“0”。
  2. 进入循环结构,声明“i”并初始化其值为“0”。
  3. “i<3”为真,执行循环体内语句。
  4. 执行“sum = sum(0) + i(0);”,“sum”的值为“0”。
  5. 循环内嵌语句执行后进行自增运算“i++;”,“i”的值为“1”。
  6. 判断,“i<3”为真,执行循环体内语句。
  7. “sum = sum(0) + i(1);”,“sum”的值为“1”。
  8. 自增运算“i++;”,“i”的值为“2”。
  9. 判断,“i<3”为真,执行循环体内语句。
  10. “sum = sum(1) + i(2);”,“sum”的值为“3”。
  11. 自增运算“i++;”,“i”的值为“3”。
  12. 判断,“i<3”为假,跳出循环,“i”被释放,“sum”的值为“3”。
  13. 向下执行循环以后的语句......

如果给一个比较大的数组赋值,可以:

int a[50];
for(int i=0; i<50; i++){
a[i] = 0;
}

这样从“a[0]”到“a[49]”的值都是“0”,一定要记住一个元素个数为“n”(本例中为“50”个)的数组,角标最大值为“n-1”(本例中为“49”)。

转载请注明,转载自:特厉害 ? for循环(特厉害的MT5/MQL5指标编程教程第十三篇:for循环结构)
原文链接:http://www.telihai.com/node/15