www问答网
所有问题
C语言:求语句x=1,z=x--||x++;执行结果,即执行后的x和z的值,为什么(设其他情况都已满足执行)?
如题所述
举报该问题
推荐答案 2021-05-09
结果是x==0,z==1。
为什么呢?把x=1,z=x--||x++;按C的优先级规则和前++后++t规则以及执行顺序分开写,就清楚了——
x=1;//逗号前的x=1的功能
z=x||x;//以下是逗号后的功能
if(x==0){
x=x-1;//x--的功能
x=x+1;//x++的功能
}
else
x=x-1;//x--的功能
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://www.wendadaohang.com/zd/KKGWK435KW5dK3nn4G.html
相似回答
x=1,z=x
--
||x++,
最后x=0,z=1
,为什么
???
答:
x=1,z=x
--
||x++;
是
逗号语句
,从左至右执行。先x=1
执行后
把z=x--||x++;半句按规则分开写出来就清楚了——z=x||x;//因为--
和++都是
后置自操作符,故
执行z
=x--||x++;时用x的原值1;则z=1||1==1。if(x!=0)//因x==1,所以执行这里 x=x-1;//x--的功能。else{//因为...
C语言
,
(x=1,z=x++
),问
x,z
最后
结果
是多少?
答:
先执行,X=1,然后再执行Z=X,然后再X++ X++表示的是先取X,再加加,++X是先++再执行X
如果是Z=++X那么Z的值就是2了 x=2,z=1
c语言
求解1
答:
a[1][2]就是第二行的第三列咯 当然就是 6 咯
请教
C语言
题目
答:
z--是先判断z>0的表达式,再将
z的值
自减1
++x
是先将x的值自加1,再判断x<5的表达式 while循环是判断z-->0和++x<5这两个表达式
的值,
如果都为真,那么才执行y自减1的表达式 第一次循环,z(3)>0并且
x(
1)<5,那么y=5-1=4,此时
x=1,
y=4
,z=
2 第二次循环,z(2)>0并且x(2)<5,...
若已定义int
x,
y
,z;执行语句x=(x=1,
y=
z=
2,y
++,z++
);
后,x为什么
为2
答:
x为2,这考查的是一个逗号表达式
,结果
等于最后一个表达
的值,
因此,先算括号的,1赋值给x,再算2赋值给
z,z
再赋值给y,此时y==z==2,所以x==2。最后x,y再分别自加1。
c语言
中,int
x=1
;
x=x++;
printf(“%d”
,x
) 输出
x的值
是1还是2?
答:
c语言
中,下面的语句作用是:int
x=1
;//声明整型变量x,并赋值1
x=x++;
//这是后自增,分两步
执行:
先赋值
x=x,
赋值后仍然x=1;然后x再自增,自增后x=2 printf(“%d”,x)//输出
x的值(
2)所以, 输出x的值是2。
c语言:x=
y
=1;z=x++,
y++,++y;计算输出
x,
y
,z的值
答:
x=1,
y=1
z=x++
把x给z,所以z=1,之后
x++,
所以x=2;y++ 原来y=1,现在变成2 ++y 前面y=2,现在变成3 所以,最后:x=2 y=3 x=1
C语言
程序问题,求详解
答:
"%d"
,++z
); else printf("%d",++y);}printf("%d\n"
,x++
);}if(y<z)else 是一个语句 如果if(x>y)为真 才执行括号里面。所以没有输出z和y的值 只执行了一个输出函数 printf("%d\n",x++);这个函数输出的是x++
的值
但x++ 的意思是 先把x输出 在+1 所以输出的结果是1 ...
c语言
逻辑运算符: int
x=
-
1; 执行
了
++x||++x||++x
后
,x的值
是?
答:
x = -1,执行第一个
x++后,x值
为0,逻辑值为false,所以要执行第二个
++x,
此时
,x = 1,
逻辑值为真,不再执行第三个++x,故,最后
x的值
为1。
大家正在搜
最基本的c语言语句是什么
c语言执行语句
c语言复合语句是什么
c语言结束语句
c语言的输出语句
c语言赋值语句
C语言if语句
C语言判断语句
x+=-z---y