C语言编程,if(a>b>c)可以这么写吗?我们老师好像有说不能连着的

如题所述

说这样的写法是错误的,是因为不能表达数学中的a>b>c的效果。但是这样的写法是符合C语言的语法的。
它的作用是先判断a>b的结果,如果成立,那么a>b为1, 否则为0.
然后再用这个结果,0或者1去和c判断。

所以这个题目是没错的,可以得出结果。
先判断a>b 为真,结果为1
再判断1>c c为3,结果为假
执行else
计算(c-1)>=d 结果为真,即为1,
再判断1==1
成立,输出d+1
结果为3
于是选D追问

这样也可以啊,也就是说a>b>c语法没错,只是不能表达数学的意思

大神,再问你一道

追答

是的 就是这样的。 所以题目中会用这种容易混淆的来做出题陷阱,但是在实际应用中,尽量不要这样写,会被人骂的,哈哈。

追问

嗯嗯。受教了

追答

你这个题目,fun的作用很明显吧,就是
如果参数字符是大写字母,那么把它转为小写。
并将得到的值,返回。

其实*p=fun(p);中,*p=是没什么用的。 p指向的值,在fun中已经被改掉了,这里只是把原来值重新赋值一下。

于是得到的*p中,就只有小写字母了。
选C

追问

多谢,麻烦了😊

难得有这么认真的了,感动

温馨提示:内容为网友见解,仅供参考
第1个回答  2015-07-01
不可以这么写,必须 if (b >c && a>b ) 或 if (a>b && b>c),这种是语法规定,没为什么的。追问

嗯嗯

第2个回答  2015-07-01
不能 ,a<b<c怎么判断,if里面只能是true/false追问

是题目错了吗?

第3个回答  2015-07-01
不能的,要写为if (a<b && b<c)追问

是题目错了吗?

追答

题目是没有错的,写为if(a>b>c)编译不会出错,只是不能正确表达自己的意思,这个题目是选择题,这样写先判断a>b,a确实大于b,这个表达式的结果就是1,然后判断1>c吗,判断结果就是假了,所以对于这个选择题if(a>b>c)的结果是真,但是如果自己写代码的话,是不建议这样写的

第4个回答  2015-07-01
不能这么写,应该写成if(a>b&&b>c)追问

是题目错了吗?

追答

题目错了,我们老师也讲过不能这么写

追问

哦哦

C语言编程,if(a>b>c)可以这么写吗?我们老师好像有说不能连着的_百度知...
说这样的写法是错误的,是因为不能表达数学中的a>b>c的效果。但是这样的写法是符合C语言的语法的。它的作用是先判断a>b的结果,如果成立,那么a>b为1, 否则为0.然后再用这个结果,0或者1去和c判断。所以这个题目是没错的,可以得出结果。先判断a>b 为真,结果为1 再判断1>c c为3,结果为...

c语言逻辑运算 if(a>b>c)错误
if (a > b > c)确实是错误的,原因在于:表达式a > b > c会依次从左到右进行计算,即相当于(a > b) > c 先计算 a > b,如果成立,会返回1, 否则会返回0; 之后再比较1 > c或者 0 > c这样就导致和你想要的结果不同 例如: a=4,b=3,c=2 则a > b返回1, 1 > c返回0,a...

C语言中有if(a> b> c)这种写法吗?
C语言中没有连续不等式的写法。if(a>b>c) 这种写法程序不能正确执行。if(a>b&&b>c) 是正确写法。

c语言中可以使用: if(a,b,c<0)这样的判断语句吗?
可以,不过判定值只取决于c的值,与a,b没有关系,如果你要表达a或b或c小于0,则需要 if(a<0||b<0||c<0)这样表达

if(a> b> c)的用法,如何理解?
在C语言中,if(a > b > c)是一个复合表达式,它表示如果a大于b,并且a大于b的结果大于c,则表达式的结果为真。否则,表达式的结果为假。换句话说,if(a > b > c)等价于if((a > b) > c)。以下是一个示例代码,演示了如何使用if(a > b > c)表达式:运行结果:♡♡ 有...

C语言中的if(a>b>c)是什么意思?
先计算 a>b 它的值是1 ,然后 1>c 它的值是0 c用0代表假用非0代表真

c语言if(a> b> c)的意思是什么?
最好不要这样写,可能与你预想的结果不现,>用于数值的比较大小,前面的a>b的结果只会是0和1(分别逻辑假和真),再与c比较大小,你是要这样吗?

C语言if条件语句中如何表达 a>b>c
用逻辑运算符与if(a>b&&b>c)

c语言if(a> b> c)是什么意思?
C语言中if(a>b>c)表示if((a>b)>c) 先求出a>b的结果,然后这个结果再和c比较,由于a>b的结果不是0就是1,最终就是0或者1与c比较。C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要...

c语言,f=a>b>c什么意思?
a>b>c逻辑表达式 逻辑表达式的只为1或0 从左自右运算 a>b若为真,则值为1,否则为0,在计算1或0是否大于c,若是,则f=1,否则f=0

相似回答