免费注册 查看新帖 |

ChinaUnix.net

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3126 | 回复: 3

关于for循环的问题 [复制链接]

论坛徽章:
0
发表于 2018-04-20 09:47 |显示全部楼层
大家好!,有一个关于for循环的问题请教大家:
...
push @arry;
for($j=0;B;$j++){
      for($i=0;C;$i++){
}
     print OUT "$j\t$i\n";
}


如果按照上面的写法,结果是$j先初始化,判断条件B,再对$i=0进行初始化,再判断条件C,之后$i累加,当C不满足的条件的时候终止返回去运行$j++;又去运行B,之后开始第二次循环又让$i=0初始化,那么第二次循环的$i++累加又是从0开始!
现在我想要的目的是:  我第二次循环的时候我不要$i的值从0开始初始化,我想要$i从第一次循环结束时的值为基础,向上累加,这个可以如何实现呢?
谢谢大家!

论坛徽章:
0
发表于 2018-04-20 11:37 |显示全部楼层
更改下我想要的目的,我之前讲的有些歪,
for($j=$arry[0];$j<$arry[-1];$j++){
   for($i=0;($arry[$i]<$j);$i++){
   }
print OUT "$j\t$i\n";
第二次循环的时候,我想要$arry[$i]<$j中的$i是第一次循环结束时的$i的值而不是重新初始化的值0,但是其他部分不变,之后在此基础上继续累加$++,这样能不能实现!

论坛徽章:
0
发表于 2018-04-20 14:49 |显示全部楼层
$k=0;
for($j=$arry[0];$j<$arry[-1];$j++){
   for($i=0;($arry[$k]<$j);$i++){

     $k++;
   }
print OUT "$j\t$i\n";
}

设定一个不会在for循环内清零的变量     然后用这个变量判断就可以了   代码没有测试  你自己测一下

论坛徽章:
0
发表于 2018-04-20 16:19 |显示全部楼层
回复 3# 唐胜

非常感谢,测试过了没有问题。谢谢!对呀设置一个和$i同步增加的变量就好了,哎哟咋就没想到!


您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

基于案例的 SQL 优化实战训练营

讲师:中电福富特级专家梁敬彬,参与本次课程培训,你将收获:
1. 能编写出较为高效的 SQL;
2. 能解决70%以上的数据库常见优化问题;
3. 能得到老师提供的高效的相关工具和解决方案;
4. 能举一反三,收获不仅仅是 SQL 优化。
现在购票享受8.8折优惠!
----------------------------------------
优惠时间:2019年3月20日前

大会官网>>
  

北京盛拓优讯信息技术有限公司. 版权所有 16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122
中国互联网协会会员  联系我们:huangweiwei@it168.com
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP