有意思的c语言题啊~~~高手进啊~~

来源:百度知道 编辑:UC知道 时间:2024/06/25 02:26:05
for(y=1;y<10;)y=((x=3*y,x+1),x-1);
printf("x=%d,y=%d",x,y);
答案是 x=15 y=14 为什么啊 ?怎么算的?
各位高手!小弟很苯啊~~请讲仔细~~

for(y=1;y<10;)y=((x=3*y,x+1),x-1);
这句等于:
for(y=1;y<10;)
{
x=3*y
y=x-1;
}
这里有个","逗号运算符.
x = (5,6,7,9) x就会等于9

这里一共只有三次循环
x=3,y=2
x=6,y=5
x=15,y=14

有水平