C语言中x>y?y:x 是什么意思?

作者&投稿:禽启 (若有异议请与网页底部的电邮联系)
C语言中:x>y?x:y; 是什么意思?问号和冒号的作用是什么?~

如果x>y,就把x的值赋给z,否则把y的值付给z。
可以把z=x>y? x : y理解为
if(x>y){
z=x;
}else{
z=y;
}

扩展资料:
三目运算符,又称条件运算符,是计算机语言(c,c++,java等)的重要组成部分。它是唯一有3个操作数的运算符,所以有时又称为三元运算符。一般来说,三目运算符的结合性是右结合的。
对于条件表达式b ? x : y,先计算条件b,然后进行判断。如果b的值为true,计算x的值,运算结果为x的值;否则,计算y的值,运算结果为y的值。一个条件表达式绝不会既计算x,又计算y。条件运算符是右结合的,也就是说,从右向左分组计算。例如,a ? b : c ? d : e将按a ? b : (c ? d : e)执行。
可以理解为条件 ? 结果1 : 结果2 里面的?号是格式要求。也可以理解为条件是否成立,条件成立为结果1,否则为结果2。

是条件语句:
?前面的x>y是个逻辑表达式,如果表达式为真,则该表达式的值取?后面的值x,否则取:后面的值y
也就是说c的值取x和y中的较大值!
? : ; 是c语言中唯一一个三目运算符。如果x大于y为真,结果输送x,否则为假结果输送y;
(!x++||y--)这个逻辑大概就是x等于0或者y不等于0最后表达式结果为1
++和--是后做的,还有如果x为0,y就不--。

扩展资料:
C的运算符有以下几类:
1、算术运算符:* - + / %
2、关系运算符: > = <=
3、逻辑运算符:! && ||
4、位运算符:> ~ | ^ &
5、赋值运算符:=及扩展赋值运算符
6、条件运算符:?:
7、逗号运算符:,
参考资料来源:百度百科-运算符

如果X大于Y的时候那前面就是真,则输出Y,如果X小于Y的话,那前面就是假,输出X

这个是一个判断语句,判断哪个小的

这是个三目运算符
如果x>y成立,返回y
不成立,返回x




c ++语言中x&(-x)是什么意思?
二者按位与,得到:第k+1位上为1,左边右边都为0。结果为2^k,即x中包含的2的最大次方的因子。总结一下:x&(-x),当x为0时结果为0;x为奇数时,结果为1;x为偶数时,结果为x中2的最大次方的因子。 比如x=32,其中2的最大次方因子为2^5,故x&(-x)结果为32;当x=28,其中2的最...

c语言中&x什么意思?
取址,得到某个变量的地址,在函数中作用为使某个变量的修改可以使原来的变量继承修改后的值。如果没有该符号,变量不会修改原值,甚至在某些用于输入的库函数中可能会引发错误;但是在一些自定义的函数里,不加上该符号则该自定义函数会把这些变量复制一份进行修改,可以修改但是不影响函数外部分(即不...

c语言中,x*=2是什么意思?
“*=”是复合赋值运算符。x*=y 等价于 x = (x) * (y)上述表达式等价于 x = x * 2 样例:int x = 2, y = 1;x *= y - 1;printf("%d", x);输出:0 因为x *= y - 1等价于x = x * (y - 1)

c语言中x++是什么意思
语句单独一条语句:x++;那么它的意思是x=x+1;就是把x的值加1 有x++,还有++x,二者如果做为单独一条语句,没有区别,如果是别的情况 x++称为后置++,++x称为前置++ x++是先取x的值,再把x的值加1 ++x是先把x的值加1,再取加1后的值 ...

c语言中,!(--x)什么意思?
C语言运算符,括号里面(---x)表示x的值减去1,相当于“x”变为“x-1”,括号外面“!”表示取反(非0数变为0,0变为1)。除了常见的三大类,算术运算符、关系运算符与逻辑运算符之外,还有一些用于完成特殊任务的运算符,比如位运算符。

C语言中x+=y,x-=y分别表示什么意思
x+=y 就是x=x+y的简写。x-=y 就是x=x-y的简写 1、+=; -= 是复合的赋值运算符。2、C语言采用复合运算符 一是简化程序。二是为了提高编译效率,能产生质量较高的目标代码。3、延伸知识点:x*=y 就是x=x*y的简写,依次类推。

!x在c语言中等于什么8i
!x在c语言中等于什么8i如下:在C语言中,"!x"表示对变量x进行逻辑非操作,即当x为0时,结果为1;当x为非0值时,结果为0。以下将详细介绍C语言中的逻辑运算符及其应用。什么是C语言 C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储...

\\X在C语言里表示什么意思?
\\x是转义字符,告诉编译器需要用特殊的方式进行处理。\\x表示后面的字符是十六进制数,\\0表示后面的字符是八进制数。例如十进制的17用十六进制表示就是‘\\x11’,用八进制表示就是‘\\021’。所有的ASCII码都可以用“\\”加数字(一般是8进制数字)来表示。而C中定义了一些字母前加"\\"来表示常见的那些...

c语言中,x++?
x++就是x=x+1.++x也是x=x+1,但两者稍有区别。++x是先将x+1在进行处理,x++是先处理,等这句话完了再加一 比如说 设cnt=0,x=1,e[++cnt]=x,这句话的意思是cnt=cnt+1,e[cnt]=1,而e[cnt++]=x,这句话的意思是e[cnt]=1,cnt=cnt+1 --x和x--同理 ...

\\xAB在C语言中代表什么
\\xAB在C语言中表示一种转义字符,是一个字符。其中x表示16进制,AB表示16进制的2位数,表示171(16进制AB对应的10进制值)所对应的ASCII码所表示的字符。在C语言中,以反斜杠开头,后跟一个字符或一个数字序列来表示一个字符量,称为转义字符。转义字符主要有以下三种形式:1、反斜杠后跟特定字符,如...

古冶区14799829287: x>y?x:y;在C语言中代表什么意思 -
威薇翠莲: 一楼说的还有点问题.A?B:C 这个运算是判断A的真假,若是真就执行B如是假就执行C,所以x>y?x:y;这句话的意思就是判断x和y值得大小,要是x>y结果就是x,否则就是y,也就是说这句的是输出的x和y中较大的那个数.可以使用一下程序来检测:#include<stdio.h> main() { int x=1,y=2,z; z=x>y?x:y; printf("z=%d\n",z); }

古冶区14799829287: c语言中 int temp=x>y?y:x; 表示什么意思? -
威薇翠莲: 这里的关键应该是x>y?y:x 这是一个条件运算符 int temp=x>y?y:x;的意思就是 :当x>y的时候,temp=y,当x<y的时候 temp=x, 希望楼主看看C语言的条件运算符的相关知识,应该就在讲解if语句的地方

古冶区14799829287: C语言中是mx=(x>y)?x:y什么意思 -
威薇翠莲: ?:是三目运算符,如x>y?x:y的意思就是如果x>y为真,则返回x,否则返回y,则mx=(x>y)?x:y的意思就是将x,y中的较大值赋值给mx变量

古冶区14799829287: C语言中z=x>y?x:y是什么意思? -
威薇翠莲: ?:称为条件运算符.?:就是表示?前的表达式的值是否为真,是的话取冒号前的值,否则取冒号后的值. 相当于: if (x>y) {z=x;} else {z=y;} 扩展资料 C语言中条件表达式的通用形式如下: exp0=exp1?exp2:exp3 如果exp1为真(非0),...

古冶区14799829287: 请哪位仁兄解释一下C语言中的(x>y? x:y)这句代码啊 -
威薇翠莲: “?”是一个判断, 如果“?”之前的判断是对的就返回“:”之前的数,否则返回之后的数. 例如:x>y? x:y 若x>y成立,则返回x,否则返回y. 这是一个比较大小的语句,把数大的返回. 这句话在括号里有可能是返回x,y中大的一个数作为参数吧.

古冶区14799829287: c语言中return (x>y? x:y)啥意思 具体 x>y?表示什么 x:y又表示什么
威薇翠莲: ? :是一个三目运算符,先判断'?'前面的,若为真,执行'?'后面语句,else,执行':'后面语句! 即if(x&gt;y) 执行x else 执行y

古冶区14799829287: c语言中return (x>y? x:y)什么意思? -
威薇翠莲: 兄弟,你的基础有待提高哇. x>y?x:y,这个表达式的意思是:x>y这个表达式为真,也就是说,如果x是大于y,那么整个表达式(即:x>y?x:y)的值为x,否则为y.那么整个return(x>y?x:y)语句意思是返回x,y中较大的那个

古冶区14799829287: C语言x>>y是什么意思 -
威薇翠莲: 应该是写错了.正确的是x>y x>>y这个也没错,但是这是移位操作,得到的是一个数据,不是一个bool型 . x>>y 表示x对的二进制右移y 位,相当于除以 2^y . 如 4>>2 相当 于 4 /2^2 = 1 按这里的语境,应该是 x>y .

古冶区14799829287: C语言里面z=x>y? x:y;什么意思 怎么用 -
威薇翠莲: z=x>y? x:y; 把中x,y大者赋值给z, x>y? x:y; 如x>y成立则(x>y? x:y)=x 不成立则(x>y? x:y)=y A? B:C 先判断A是否成立, 成立则(A? B:C)=A 不成立则(A? B:C)=B

古冶区14799829287: 在c语言中的x>y?(x=x):(t=x,x=y,y=t)是什么意思 -
威薇翠莲: if(x>y) x=x; else {t=x; x=y; y=t;}就是说如果x比y大没什么变化.但是如果x小于等于y时,则x和y交换下.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网