返回第二十三章 轮回法则(上)(2 / 2)任煦之秋首页

关灯 护眼     字体:

上一页 目录 下一章

printf(“Dad said:\“C is very fun!\““);」

看着我敲出来的代码,老爹笑着拍了拍手。

「玥玥啊,你有没有发现在取数组元素的时候好像有点问题?」

老爹一边说,一边露出了他那让人抓狂的笑容。

一般老爹这么说,那肯定是意有所指。

「老爹你先前说无论是往数组里面放数据,还是从数组里面取数据,都要靠数组的编号,这样看来,的确可以把数组中的每一个元素都取出来。

但是如果数组的元素太多,一个一个的取也是一个很大的工程量啊。况且要一个一个的取的话,对于加载地图的时候完全没有帮助嘛!」

我脑袋飞速运转,开始分析当前存在的问题。

老爹满意地点了点头,然后说道:「分析得不错,那接下来就跟你说说混沌先民中掌握了轮回法则的两尊大神——for和while。」

「轮回法则?」

我眼睛一亮,从老爹的话中捕捉到了一些信息。

「不错,这两位可是有大能耐,当它们施展轮回法则的时候,会让它们所在的那片空间的时间停止,直到轮回法则结束。」

「听起来好有意思的样子!」

「既然如此,那么我们先用一个具体的小例子来说明它们的用法。

比如说现在我一个长度为1000的int型数组,需求是每一个元素的值就是它的在数组中的编号。

如果没有轮回法则的话,我们就只能这样:int arr[1000]={0, 1, 2, 3……,998, 999};

或者这样:

int arr[1000];

arr[0]= 0;

arr[1]= 1;

……

arr[999]= 999;

费劲不?」

「老费劲了!」

「但是有了for和while,我们就很容易就能做到了,先说for:

for(int i = 0; i < 1000; i++)

{

arr[i]= i;

}」

「这……这就完了?」

这回轮到我无语了,这相差也太大了吧?

「简单吧?现在来跟你说说这是什么意思。

for(轮回开始;轮回条件;轮回变数)

{

每次轮回执行的内容

}

当for轮回启动的时候,首先会执行轮回开始,在上面的例子中,我们在这个地方声明了一个名为i的int型变量,并为它初始化值为0。接下来for就会检查轮回条件,如果条件为真,它就要执行每次轮回都要做的事情,咱们这里向数组编号为i的元素赋值为i。此时i = 0,0当然是小于1000的,于是for执行轮回的内容,将编号为0(i = 0)的元素赋值为0(i=0)。

当每次轮回的事情做完后,for就要执行轮回变数,我们要它将i加1,所以这个时候i就从0变成了1。

接下来for又要去检查轮回的条件是不是满足,1小于1000成立,于是执行轮回内容:将编号为1(i = 1)的元素赋值为1(i=1),然后执行轮回变数, i从变成了2。

然后一直就是判断条件->执行内容->执行变数->判断条件……

直到i=999的时候。

当for执行完本次的轮回内容,即:将编号为999(i = 999)的元素赋值为999(i=999)后,再执行变数,i就从999变成了1000。

这个时候for再去判断轮回条件的时候,i等于1000并不小于1000,轮回条件不成立,结束轮回。」

『加入书签,方便阅读』

上一页 目录 下一章