c++ 的while循环

来源:百度知道 编辑:UC知道 时间:2024/09/23 16:24:26
C++新手求助:有一下一段程序
int x,y,z;
y=2;
while(y<10 )
{
x=y++;
z=++y;
}
cout<<"x="<<x<<","<<"y="<<y<<","<<"z="<<z<<endl;
输出结果:X=8,Y=10,Z=10
将初始值改为y=1,输出结果X=9,Y=11,Z=11.

请问X,Y,Z是怎么计算出来的?

记住y++是先用再加,++y是先加再用
while(y<10 )//第1轮y=2
{
x=y++;//x=2,y=3;
z=++y;//y=4,z=4;
}
while(y<10 )//第2轮y=4
{
x=y++;//x=4,y=5;
z=++y;//y=6,z=6;
}
while(y<10 )//第3轮y=6
{
x=y++;//x=6,y=7;
z=++y;//y=8,z=8;
}
while(y<10 )//第4轮y=8
{
x=y++;//x=8,y=9;
z=++y;//y=10,z=10;
}
之后就不满足条件了。
y改1依此类推

x=y++的意思是x=y;y=y+1
z=++y的意思是y=y+1;z=y

Y++是先将Y的值等到X中再将Y的值加1,++Y是先将Y的值加1再等到Z中

楼主注意 y++是先引用然后再自加,++y是先自加然后再引用
这样随着循环的依次下去,当y的值大于等于10的时候跳出
打印结果,楼主用笔仔细推一下,很容易的
希望帮到你!

我也是新手,觉得3楼说的很好。