找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 7020|回复: 39
收起左侧

for ( ; i>=2; i--)什么意思

  [复制链接]
ID:204609 发表于 2017-7-21 14:22 | 显示全部楼层 |阅读模式
这是for(i=2;i>0;i--)的简写吗
回复

使用道具 举报

ID:164602 发表于 2017-7-22 09:13 | 显示全部楼层
不是那样的。
语法:for(表达式1;表达式2;表达式3)
其中:表达式1一般是赋初值的语句,你没有给出完整的程序,应该在某地有对i赋值,可以省略。
表达式2一般是条件、逻辑表达式,你给出的语句应该理解为——当i大于等于2时——的意思。不是初值为2.
表达式3一般为改变循环条件的语句,如你给的语句——i--其实就是i=i-1的意思。
回复

使用道具 举报

ID:220741 发表于 2017-7-22 09:44 来自手机 | 显示全部楼层
HC6800-ES-V2.0 发表于 2017-7-22 09:13
不是那样的。
语法:for(表达式1;表达式2;表达式3)
其中:表达式1一般是赋初值的语句,你没有给出完 ...

关于for语句,表达式1 2 3都可以省略,他省略了表达试1
回复

使用道具 举报

ID:207702 发表于 2017-7-22 11:29 来自手机 | 显示全部楼层
省略了i=1,不影响
回复

使用道具 举报

ID:221573 发表于 2017-7-22 12:27 | 显示全部楼层
不是的,这说明i之前已经定义或者赋值了,然后进行循环
回复

使用道具 举报

ID:221593 发表于 2017-7-22 14:46 | 显示全部楼层
没错,i初始值为2,自减,减到0,后边应该有循环之类的语句。
回复

使用道具 举报

ID:187835 发表于 2017-7-22 14:47 来自手机 | 显示全部楼层
就是说i不论是什么值,当它大于等于2的时候就递减,也就是说i会等于1
回复

使用道具 举报

ID:221605 发表于 2017-7-22 15:56 | 显示全部楼层
这个 i前面定义赋值过了所以这里可以省掉
回复

使用道具 举报

ID:221628 发表于 2017-7-22 16:58 | 显示全部楼层
i在这句之前应该是已经被赋值了,所以这个for句里可以省略赋值那句
回复

使用道具 举报

ID:221467 发表于 2017-7-22 17:11 | 显示全部楼层
前面i已经赋值了,可以省略
回复

使用道具 举报

ID:157057 发表于 2017-7-22 17:57 | 显示全部楼层
i没有赋值,然后执行的条件。。

回复

使用道具 举报

ID:221280 发表于 2017-7-22 18:49 | 显示全部楼层
赋值语句省略,应该在for语句之前就已经赋值了
回复

使用道具 举报

ID:221618 发表于 2017-7-22 19:31 | 显示全部楼层
i大于等于2的时候执行循环,每执行一次i值减1,直到i小于2时退出循环
回复

使用道具 举报

ID:219197 发表于 2017-7-22 22:00 | 显示全部楼层
for(;i>=2;i--)==for(i=0;i>=2;i--)
回复

使用道具 举报

ID:219197 发表于 2017-7-22 22:28 | 显示全部楼层
错了,你看看是不是有形参如下

void xxxx(uint i)
{
   for(;i>=2;i--)
}
若是这样的话   i就是形参在其他地方的实参的值
回复

使用道具 举报

ID:220342 发表于 2017-7-23 09:03 | 显示全部楼层
省略了初始赋值语句,应该是在别的语句里已经赋值过了,这里就省略了
回复

使用道具 举报

ID:221711 发表于 2017-7-23 09:24 | 显示全部楼层
不是,这个i 的初值要自己在前面赋值,i>=2就是i 大于等于2 的意思
回复

使用道具 举报

ID:221117 发表于 2017-7-23 09:54 | 显示全部楼层
不一定。如果在for之前 i 就已经赋值了,可以写成for ( ; i>=2; i--), i 起始值不一定是2.
回复

使用道具 举报

ID:221671 发表于 2017-7-23 16:37 | 显示全部楼层
i从2开始,每次减一,只要大于0就执行
回复

使用道具 举报

ID:221671 发表于 2017-7-23 16:40 | 显示全部楼层
i先被赋值2,然后每次减一,只要大于2就执行
回复

使用道具 举报

ID:221800 发表于 2017-7-23 16:53 | 显示全部楼层
c语言的循环语句
回复

使用道具 举报

ID:221800 发表于 2017-7-23 16:54 | 显示全部楼层
其中:表达式1一般是赋初值的语句,你没有给出完整的程序,应该在某地有对i赋值,可以省略。 表达式2一般是条件、逻辑表达式,你给出的语句应该理解为——当i大于等于2时——的意思。不是初值为2. 表达式3一般为改变循环条件的语句,如你给的语句——i--其实就是i=i-1的意思。
回复

使用道具 举报

ID:221806 发表于 2017-7-23 17:12 | 显示全部楼层
上面的说对了
回复

使用道具 举报

ID:221804 发表于 2017-7-23 17:53 | 显示全部楼层
前面应该有对i赋值的语句
回复

使用道具 举报

ID:187532 发表于 2017-8-1 08:45 | 显示全部楼层
不是你写的那样,是你程序上面给i赋了一个值,下面直接用,假设上面赋值i=5的话,for(i=5;i>=2;i--)的意思
回复

使用道具 举报

ID:223402 发表于 2017-8-1 09:21 | 显示全部楼层
不是的。他的意思是:如果 I>=2,那么就让I-1,然后再进行判断I
回复

使用道具 举报

ID:137261 发表于 2017-8-5 11:21 | 显示全部楼层
不是,前第一个分号没有写东西,说明前面有给i赋值
回复

使用道具 举报

ID:223754 发表于 2017-8-5 12:31 | 显示全部楼层
不是的,二楼说的很明白的,可以看下类似for函数语句就明白了
回复

使用道具 举报

ID:224967 发表于 2017-8-5 14:06 | 显示全部楼层
不是吧,这个应该是在I小于等于2的前提下,2做自减
回复

使用道具 举报

ID:167440 发表于 2017-8-5 14:43 | 显示全部楼层
不是的这样写表示i的初始值在别的地方给出
回复

使用道具 举报

ID:222119 发表于 2017-8-5 16:45 | 显示全部楼层
省略了赋值过程,你可以在进入for之前给 i 赋值,for语句的三个分语句其实都可以省略的,非常灵活
回复

使用道具 举报

ID:225013 发表于 2017-8-5 16:46 | 显示全部楼层
不是  进入for循环后  直接判断 i 是否大于等于2.

如果前面有i的赋值就会执行,如果前面没有i的赋值就会报错
回复

使用道具 举报

ID:225017 发表于 2017-8-5 16:50 | 显示全部楼层
前面的i应该是省略了,
回复

使用道具 举报

ID:225022 发表于 2017-8-5 16:59 | 显示全部楼层
i在之前就定义了,这里可以略掉,,,
回复

使用道具 举报

ID:225089 发表于 2017-8-5 21:26 | 显示全部楼层
i在这句之前已经被赋值了,省略表达式1
回复

使用道具 举报

ID:225149 发表于 2017-8-6 11:06 来自手机 | 显示全部楼层
hzlsw1 发表于 2017-7-22 11:29
省略了i=1,不影响

不能说省略了i=1,只是省略了赋值部分。
回复

使用道具 举报

ID:225153 发表于 2017-8-6 11:12 | 显示全部楼层
不是,是省略了赋值语句
回复

使用道具 举报

ID:223545 发表于 2017-8-6 13:45 | 显示全部楼层
第一个分号前省略了i 的初始化
回复

使用道具 举报

ID:134765 发表于 2017-8-7 14:54 | 显示全部楼层
你这程序不完整,,,前面肯定有定义了i
回复

使用道具 举报

ID:225457 发表于 2017-8-7 15:10 | 显示全部楼层
i没有赋值,然后执行的条件。。
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表