用for循环算出1-100的和

<?phpfor($i=1;$i<=100;$i++){$h=$h+$i;}echo$h;?>知道这么写,但是不明白$h=$h+$i;这个式子,还有为什么能得到5050这... <?php

for($i=1;$i<=100;$i++){
$h=$h+$i;

}
echo $h;
?>
知道这么写,但是不明白$h=$h+$i;这个式子,还有为什么能得到5050这个数呢
希望能详细的解释下
展开
 我来答
至娛与至樂
推荐于2018-04-05 · TA获得超过8084个赞
知道大有可为答主
回答量:4517
采纳率:88%
帮助的人:1045万
展开全部
这是从1累加到100,这个肯定等于5050.
至于这个式子。我解释一个:
$h = $h + $i;它的意思是$h + $i,然后赋与$h,
这个"="是赋值的意思,并不是我们平常数学中的“等于”意思
$h初始值为0, $i的初始值为1。相加以后等于1,然后赋与$h,
这个代码的累加方式是这样的。
$h = 0 + 1; 结果$h为1;
$h = 1 + 2; 结果$h为3;
$h = 3 + 3; 结果$h为6;
$h = 6 + 4; 结果$h为10;
$h = 10 + 5; 结果$h为15;
$h = 15 + 6; 结果$h为21;
$h = 21 + 7; 结果$h为28;
$h = 28 + 8; 结果$h为36;
$h = 36 + 9; 结果$h为45;
$h = 45 + 10; 结果$h为55;
$h = 55 + 11; 结果$h为66;
,,,,,, 结果$h为4950;
$h = 4950 + 100;
最后累加为5050
以此类推。最后累加$h为5050
747238645aa
2014-04-12 · 超过18用户采纳过TA的回答
知道答主
回答量:48
采纳率:0%
帮助的人:40.2万
展开全部
$h=$h+$i就是说让$h重新赋值,
$i=1时,$h=0+1;$h=1;
$i=2时,这个时候$h=1,进行运算,$h=1+2, 因此$h又被重新赋值了,这时候$h=3;

$i的值在这里就是循环的次数,也就是说循环了2遍,$h做了这么个运算 $h=0+1+2,
如此类推,,$i=100的时候,$h=0+1+2...+99+100
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jinyc007
2014-04-12 · TA获得超过934个赞
知道小有建树答主
回答量:398
采纳率:75%
帮助的人:476万
展开全部

php 不需要在程序里预先声明变量或者定义变量的值,变量的值将会在运算时,根据上下文来定义它的值。参与运算时,会根据运算符进行类型的转变。

// 例子1
var_dump( $a ); // NULL
var_dump( $b + 0 ); // int(0)
var_dump( $c + 1 ); // int(1)
// 例子2
$a = $a + 1;
// (int) $a + 1
// (int) NULL + 1
// 0 + 1
// 1 表达式运算结束,最后,赋值给 $a,即 $a = 1
// 例子3
for($i = 1; $i<=100; $i++) {
    $h = $h + $i;
}
// 演示第一次运算:
// 因为 $i = 1 是一个整形,所以会对 $h 进行类型转换,这个是自动完成的
// 由于 $h 参与表达式运算时为声明,所以,$h = NULL,而 $i = 1
// $h = (int) $h + $i
// $h = (int) NULL + 1,(int) NULL = 0
// $h = 0 + 1 = 1,第一次运算结束,$h = 1,$i = 1
// 第二次运算,$i = 2,$h = 1,然后参与 $h = $h + $i 运算,以此类推。

对于程序而言,还是比较简单的,主要是变量赋值和类型的自动转换是关键,这个 php 手册里有比较详细的说明,建议多看下,加深理解。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式