面试题:对$i++和for循环的考察

2022-08-03 14:12:26 浏览数 (1)

先看题目:下面的程序输出几?

$i = 1; for(i=0; i<10; } echo $i;

解析:这道题其实主要是考察我们对$i 和for循环的理解,可以说是对基础掌握的了解。

首先看看 i 和 i的基本区别:

i : 先在表达式中使用 i的值然后在加 1 。

i : 先使用i的值加1后,然后在在表达式中使用新的值。

下面举例说明一下:

1、i 的用法(以 a=i , i=2 为例 )

先将i的值赋值给变量a(也就是 a=i),然后i的值在加1 (也就是i =

则最终 $a 的值等于2,i 值等于3。

所以a=i 相当于a=i,i = i 1;

2、 i 的用法(以a= i,i=2为例)

先将i的值加1(也就是 i=i 1),然后赋值给a(也就是a=i)。

则最终i=3,a=3。

所以a= i 相当于i=i 1, a=

在看一下for循环

语法:

for(初始值;条件;增量){ 要执行的代码; }

参数:

1、初始值:主要初始化一个变量值,用于设置一个计数器(但可以是任何在循环的开始被执行一次的代码)。

2、条件:循环执行的限制条件。如果为true则继续循环。如果为false,则循环结束。

3、增量:主要用于递增计数器(但可以是任何在循环的结束被执行的代码)。

注意:上面的初始值和增量参数可以为空,或者有多个表达式(用逗号分隔)。

是不是上面的题目有了答案,其实最开始的$i=1是迷惑我们的,和整体没啥关系。

所以上方的题目答案是:

循环第一次:0 1 = 1;

第二次:1 1 = 2;

第三次:2 1 = 3;

第四次:3 1 = 4;

第五次:4 1 = 5;

第六次:5 1 = 6;

第七次:6 1 = 7;

第八次:7 1 = 8;

第九次:8 1 = 9;

第十次:9 1 = 10;

所以$i=10,总共循环了十次。

0 人点赞