A. C语言的逻辑题
(1)0;因为a+b>c为真,逻辑值是1,但b==c为假,逻辑值是0,&&表示“且”,所以该式值为0。
(2)1;因为a不为0,所以逻辑式a为真,同理b+c也为真,b-c也为真,所以该式值为1。
(3)1;a>b为假,所以!(a>b)为真,c值不为零,所以!c的逻辑值是零,||表示“或”,1&&0||1为1。
(4)0;看后面&&0就知道是0了。
(5)1;!(a+b)的逻辑值是0,所以!(a+b)+c-1==0+5-1==4!=0,而b+c/2也不为零,所以该式为真。
B. C语言逻辑表达式的习题
d1=(a<b)||(++a==5)||(c>b--); 因为都是或运算,有一个为真,那么整个表达式都为真,a<b为真,所以后面的表达式程序都不会去管,所以d1 =1,a=4,b=8,c=5
d2=(a>b)&&(++a==5)||(c>b--);先是与运算,一个为假那么就是假,a>b为假,所以&&(++a==5)不执行,后面是或运算,再判断,c>b--,也是假,0||0=0,所以d2=0,a=4,b=7,c=5
d3=(a<b)||(++a==5)&&(c>b--);因为&&的优先级高所以可以改写成(a<b)||((++a==5)&&(c>b--)),a<b为真,后面的不判断,所以d3=1,a=4,b=7,c=5
d4=(a>b)&&(++a==5)&&(c>b--);a〉b为假,后面的也不判断d4=0,a=4,b=7,c=5
C. 几个关于逻辑运算的C语言题目
包括:1。&&逻辑与
2。||逻辑或
3。!逻辑非
逻辑运算符用于对包含关系运算符的表达式进行合并或取非
对于使用逻辑运算符的表达式,返回0表示“假”,返回1表示“真”。清物关于逻辑运算符的解释
请注意:任何使用两个字符做符号的运算符,两字符之间不应有空格,即将==写成=
=是错误的。
假设一个程序在同时满足条件a<10和b==7时,必须执行某些操作。应使用关系运算符和逻辑运算符“与”来写这个
条件的代码。用&&表示“与”运算符,该条件代码如下:
(a<10)
&&
(b==7);
类首正穗似地,“或”是用于检查两个条件中是否有一个为真的运算符。它由两个连续的管道符号(||)表示。如果上例
改为:如果任者卜一语句为真,则程序需执行某些操作,则条件代码如下:
(a<10)
||
(b==7);
第三个逻辑运算符“非”用一个感叹号(!)表示。这个运算符对表达式的真值取反。例如,如果变量s小于10,程序
程序需执行某些操作,则条件代码如下:
(s<10)
或
(!(s>=10))
//s不大于等于10
关系运算符和逻辑运算符的优先级一般都低于算术运算符。例如,5>4+3的计算与5>(4+3)运算符是一样的,即
先计算4+3,再执行关系运算。此表达示的结果为“假”,即,将返回0。
下面的语句
printf("%d",5>4+3);
将输出
0
可以总结为:&&的结果是真真为真。||的结果是假假为假。