C语言中,如何表示“真”还是“假”?系统如何判断一个量的“真”和“假”?
C语言编译系统在表示逻辑运算结果时,以数值1代表“真”,以0代表“假”。 比如:a、b的值分别是0、4,则a||b的值为1,a&&b的值为0。
但在判断一个量是否为“真”时,以0代表“假”,以非0代表“真”。比如:a=4,因为a的值为非0,被认作“真”,所以对它进行“非”运算!a=0 。
其实语句是否执行由用户的代码(即判断条件)决定的,而系统只用0和非0进行判断,当用户认为此句可执行,系统判断为“真”,反之亦然 。
比如:while(ch!='#'){语句序列;}
ch!='#'为判断条件
假如ch='A',这可执行大括号中语句序列(系统判断为“真”)
当ch='#',不可执行大括号中的语句序列(系统判断为“假”)
扩展资料
C语言的运算符主要用于构成表达式,同一个符号在不同的表达式中,其作用并不一致。下面按计算的优先顺序,分别说明不同作用的表达式。需要特别指出,在C语言标准中,并没有结合性的说法。
相同优先级运算符,从左至右依次运算。注意后缀运算优先级高于前缀。因此++i++应解释为++(i++)。
而与或非的运算优先级都不一样,因此a && b || b && c解释为(a && b) || (b && c)合理使用优先级可以极大简化表达式。
基本表达式(Primary expressions),主要是用于运算符之间,做为运算数。标识,常量,字符串文字量,优先级提升表达式最优先执行。优先级提升表达式是指圆括号包围的表达式,如“( expression )”
推荐于2017-11-25
比如:a、b的值分别是0、4,则a||b的值为1,a&&b的值为0.
但在判断一个量是否为“真”时,以0代表“假”,以非0代表“真”
比如:a=4,因为a的值为非0,被认作“真”,所以对它进行“非”运算!a=0
其实语句是否执行由用户的代码(即判断条件)决定的,而系统只用0和非0进行判断,当用户认为此句可执行,系统判断为“真”,反之亦然
比如:while(ch!='#'){语句序列;}
ch!='#'为判断条件
假如ch='A',这可执行大括号中语句序列(系统判断为“真”)
当ch='#',不可执行大括号中的语句序列(系统判断为“假”)
如果对你有所帮助,请记得采纳最佳答案,谢谢!
2013-12-20
2013-12-20