这个程序何分析,求高手点化下哦,小弟不才愚昧;
用VC6.0运行结果如下:
X= 0;Y=1
X=2;Y=3
X=4;Y=5
````````````
````````````
````````````
X=14;Y=15
当Y=0时,执行X=Y++后,输出是先将Y的值赋给X;再输出Y的值;即(Y+1);
当Y=1时,执行X=Y++时,X的值是不是要加上上次Y的值即(Y+1);再赋值给X;然后再输Y的值;
``````````````````````````````````````
`````````````````````````````````````
`````````````````````
嗯,第一循环输出之后,Y=1,第二次循环Y<15成立,执行Y++即(Y+1),此时Y=2,赋值给X之后Y再加1.
跟你说一下执行的顺序吧,可以分为四步,Y=0第1步,Y<15第2,Y++第3,下面的赋值和输出可以看作第4步,Y=0只执行一次,之后就是不断的234循环,直到Y=15,Y<15不成立,循环结束.
其实你知道循环顺序应该就知道结果,还有你有两个Y++,所以每次循环X和Y的值都加2.
#include<stdio.h> void main() { int y,x; for(y=0;y<15;y++) { x...
首先y=0;y<15;此时y的值是0,然后是y的值赋给x再执行++,所以第一次打印就是x = 0, y = 1,以此类推 你也可以x = ++y 来试一下,这个就是先执行++再赋值给x.
#include<stdio.h> void main( ) { int x =5, y= 10; y++ ; x + =...
【结果】:x=0,y=12第一次:执行前x=30,y=0,满足循环条件;运算结束x=15,y=2;循环结束x=14,y=3第二次:执行前x=14,y=3,满足循环条件;运算结束x=7,y=5;循环结束x=6,y=6第三次:执行前x=6,y=6,虽然x
...x=y=0; while (x<15) y++,x+=++y ; printf(“%d,%d”,y,x...
include<stdio.h> void main(){ int x=0,y=0;while (x<15){ y++;x+=++y;} printf("%d,%d ",y,x);} 程序结果为 8,20
#include <stdio.h> int main(){ int x=0,y=0; while(x<15) y++,x+...
int main(){ int x=0,y=0;while(x<15){ y++;x+=++y;} printf("%d,%d",x,y);} \/\/++y输出y值加好以后的值 \/\/y++; x+=++y \/\/y=1 x=2 y=2 \/\/y=3 x=6 y=4 \/\/y=5 x=12 y=6 \/\/y=7 x=20(x>15 所以跳出循环) y=8 ...
#include <stdio.h> int main(){ int x=0,y=0; while(x<15) y++,x+...
主要看这一行 while(x<15) y++,x+=++y;++的优先级要高于+=的优先级 因此x+=++y可等价于:x=x+(++y).即将++y与x原来值的和重新赋给x.运算的过程为: x y 2 2 6 4 12 6 20 8 这样回答能理解吗?
#include <stdio.h> void main() { int x,y; for (x=1,y=1;x+y<=1...
\/*你判断的是*\/(x%10==0)\/*但你输出的是*\/x+y \/*应该改成*\/((x+y)%10==0)
编程,输入a1、a2、...、a15 后,计算下列表达式的值并输出
include<stdio.h> void main(){ int y; \/\/如果是实数可以将int换为float int x,i;y=0;for(i=0;i<15;i++){ scanf("%d",&x); \/\/如果是实数将%d换成%f y+=x*x;} printf("结果是%d\\n",y); \/\/实数将%d 换为%f } ...
#include <stdio.h> void main() { int x,y; x=y=0; while (x<10) x...
一共执行4次循环 第一次执行完y=1,x=1 第二次执行完y=2,x=3 第三次执行完y=3,x=6 第四次执行完y=4,x=10 循环条件不成立,输出4,,10
#include <stdio.h> int x, y; int main() { for
for (x=0; x<10; x++) printf("\\n");
#include<stdio.h> void main() { int x=1,y; y=++x*++x; printf("%d...
1。i-- i 参与运算后,i 的值再自减 1。解答问题:x=1为初始化值.y=++x * ++x;第一个++x, x=2;第二个++x, x=3; 同样道理 第一个++x 也=3; 因为x的内存地址不变.第二个++x加了1后=3.第一个++x也会改变自身的值.所以:结果=9 在visual C++6.0编译后结果=9 ...