社区
新手乐园
帖子详情
for(i=0;i<3;++i)和for(i=0;i<3;i++)输出的i值怎么没区别?脑子有点乱了。
ln6twf
2009-06-22 05:15:05
在我的理解前面的输出值是:1,2。
后面是:0,1,2.
但实际值都是:0,1,2.
乱了,有点乱。
...全文
1644
91
打赏
收藏
for(i=0;i<3;++i)和for(i=0;i<3;i++)输出的i值怎么没区别?脑子有点乱了。
在我的理解前面的输出值是:1,2。 后面是:0,1,2. 但实际值都是:0,1,2. 乱了,有点乱。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
91 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
fiveyes
2009-08-03
打赏
举报
回复
#include <iostream.h>
int main()
{
int k=0;
for(int i=0;i<3;k=(i++)*2) //换成++i,就会看到区别了
cout << k << endl;
return 0;
}
cmf41013
2009-08-01
打赏
举报
回复
没有认真看书
密斯刘
2009-08-01
打赏
举报
回复
一样的结果 for循环我一般都是写i++的
zhoutt1989
2009-08-01
打赏
举报
回复
[Quote=引用 3 楼 arong1234 的回复:]
为什么前面会是12?进循环首先执行第一个子句,然后执行中间子句,然后执行循环体,然后再执行++i,根本不会出现你所谓的++i/i++会影响整个循环的问题,++i/i++的顺序问题只影响for的第三个子句,不影响整个循环
[/Quote]
同意
「已注销」
2009-07-31
打赏
举报
回复
012 012
Lawrencewt
2009-07-30
打赏
举报
回复
for的执行过程
1:i=0
2:判断i <3,为真转3,为假转6
3:循环体...
4:i=i+1;
5:转2
6:出循环...
正解.........................................................................
王夸父
2009-07-27
打赏
举报
回复
因为你的printf("%d",i);是在++i;前面执行的for(i=0;i<3;++i)的执行顺序是i=0;然后判断i<3;满足则执行{。。。。}里面的语句,最后执行++i;故你的输出结果和i++的结果一样。
Cloud__Apex
2009-07-27
打赏
举报
回复
++i 和 i++ 要明白是什么意思啊 ,循环里面的 ++i 和 i++ 其结果都是 多加了1而已
shark1682003
2009-07-27
打赏
举报
回复
赞成四楼的回答,应该明白for循环的执行顺序
chjsatan
2009-07-27
打赏
举报
回复
不显示删除回复显示所有回复显示星级回复显示得分回复 for(i=0;i<3;++i)和for(i=0;i<3;i++)中的++i和i++只是i变量什么时候用到的问题而已 ++i的是这个式子的变量先用 在相加 i++的是i的先用在相加改变了i++的值
i=0,++i;的时候++i先把值传给前面的变量再i加1的 所以式子的值是0而i是1
而i=0,i++;中 i是先加1在把值传给式子i++,所以式子是1而式子是1
似乎是这么回事的 好久没有接触这个东西了 祝你愉快
amossavez
2009-07-26
打赏
举报
回复
是选执行循环体,在执行第三个子句的!没区别
xixuer_20070803
2009-07-26
打赏
举报
回复
一点区别都没;
这是他们单独作为一个语句,得到的结果每次一样,对循环没有任何影响 ;
如果是把他们的结果赋值的话会有差一个的区别,应用不在这里
neverfailor
2009-07-25
打赏
举报
回复
单独使用的话
++i和i++是没有区别的!
十八道胡同
2009-07-25
打赏
举报
回复
对于单个句子
i++;++i;是没有区别的
有区别的在于
b=i++;
b=++i;这种的
stuqbx
2009-07-24
打赏
举报
回复
不好意思写错了!
第一次循环执行完输出0 第二次输出1 第三次输出2
stuqbx
2009-07-24
打赏
举报
回复
for(i=0;i <3;
/*1.先执行这两句*/
++i
/*3.最后在执行这句*/
)
{
cout < <i < <endl;
/*2.再执行这句*/
}
//第一次循环执行完输出0 第二次输出2 第三次输出3
同理,
for(i=0;i <3;
/*1.先执行这两句*/
i++
/*3.最后在执行这句*/
)
{
cout < <i < <endl;
/*2.再执行这句*/
}
//第一次循环执行完输出0 第二次输出2 第三次输出3
stuqbx
2009-07-24
打赏
举报
回复
for(i=0;i <3;
/*1.先执行这两句*/
++i
/*3.最后在执行这句*/
)
{
cout < <i < <endl;
/*2.再执行这句*/
}
//第一次循环执行完输出0 第二次输出2 第三次输出3
同理,
for(i=0;i <3;
/*1.先执行这两句*/
i++
/*3.最后在执行这句*/
)
{
cout < <i < <endl;
/*2.再执行这句*/
}
//第一次循环执行完输出0 第二次输出2 第三次输出3
kellyschurz
2009-07-24
打赏
举报
回复
15楼是正确的!
Angleyuhj
2009-07-23
打赏
举报
回复
输出时机的问题……
jackyloncoln
2009-07-23
打赏
举报
回复
for(i=0;i <3;i++)
{
cout < <i < <endl;
}
for(i=0;i <3;)
{
cout < <i < <endl;
i++;
}
上面两个for语句的输出是一样的。
加载更多回复(71)
求一个3*3的整形矩阵对角线元素之和
#include #include int main(){ int a[3][3]; int i,j; int sum=0; for(i=0;i for(j=0;j scanf("%d",&a[i][j]); } for(i=0;i for(j=0;j if((i==j)||(i+j==2))
for循环语句
1、for循环介绍 首先在C语言中for语句是一个循环语句,且是一个有界限的循环语句,比如for(i=0;i<10;i
++
){}的界限是{}里的语句从0循环到10为止,所以循环语句有界限的都可以选择使用for语句 例如: #include <stdio.h> int main() { int ii=0; // 超女分组编号的计数器 int jj=0; // 每组靓仔序号的计数器 for (ii=1;ii<=3;ii
++
)...
C语言:复杂度分析I
题目:分析如下代码 for(i=1;i<n;i
++
) for(j=1;j<i;j
++
) for(k=1;k<j;k
++
) printf("\n"); 问printf语句共执行了几次?这段代码执行完以后i+j+k
值
为多少? 输入 由多行组成,每行一个整数n, 1<= n <= 3000
输出
对每一行输入,
输出
对应的一行,包括空格分开的两个整数,分别代表printf语句...
JAVA练习题及答案-循环语句
JAVA练习题及答案-循环语句 1.用while和for循环分别计算100以内的奇数和偶数的和,并
输出
2.用while和for循环
输出
1-100之间能被5整除的数,并每行
输出
三个
值
3.使用循环分别实现10进制整数转成二进制 4.编程求:1!+2!+3!+…10! 代码如下: 用while循环计算100以内的偶数: int i=0; int sum=0; while(i<=100...
Java第一次学习
#乘法口诀(java嵌套) public class cf{ public static void main(String args[]){ int i,j,num=0; for(i=1;i<=9;i
++
){ for(j=1;j<=9;j
++
){ num=i*j;\\计算乘积 System.out.print(i+"*"+j+"="+num+"/t");\\
输出
} System.out.println();\\换行 } } } 运用for的
新手乐园
33,319
社区成员
41,771
社区内容
发帖
与我相关
我的任务
新手乐园
C/C++ 新手乐园
复制链接
扫一扫
分享
社区描述
C/C++ 新手乐园
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章