关于C语言逻辑运算符一道简单的题目!

作者&投稿:答鸣 (若有异议请与网页底部的电邮联系)
几道c语言逻辑运算符的小题~

前两个程序就是++i和i++的区别。
++i。是先把i加一后再执行运算,如i = 0,j = 0; j = ++i;最后i = 1;j = 1;因为先执行i加一,在执行赋值给j;
i++。是先执行运算在执行i加一。如i = 0,j = 0;j = i++;最后i = 1;j = 0;因为先执行赋值给j,在i加一。
第三个程序就是=和==,即赋值号和等于号的区别。=在c语言是赋值,==在c语言才是等于。如果是赋值运算在布尔运算中绝对是对的也就是布尔运算的1
如上面程序就是赋值,c = 1 ,c = 3 ,c = 5。那么这几个相与就是1&&1&&1,结果就是1。

k=0是赋值语句,是把0赋值给变量k,然后k的值就变成0了,如果是k==0才是判断。

这是逻辑运算符的短路判断造成的!
由于逻辑运算符||和&&实现判断左值的,显然如果根据左值就能够判断整个表达式真假的话,那剩下的就不用判断了!目前的C编译就是这样处理的!
对于逻辑或||,左值为真,整个表达式就为真;
对于逻辑与&&,左值为假,整个表达式就为假!

++x||++y&&++z中先执行逻辑或||左边的++x后x=1,左值为真,后面的自然就不用处理了!

这个是C语言的优化造成的。
按照C语言对逻辑或运算优化计算的规定,当逻辑或的左运算分量满足时,不再计算逻辑或的右运算分量,而直接得到逻辑或运算的结果。由于逻辑或的右运算分量不曾计算过,所以变量y,z的值也不为变化。

就是这样算的

逻辑运算符从左至右还确保其操作数的计算。 但是,它们计算必要的操作数的最小数目确定表达式的结果。 这称为 “短路计算”。


C语言中逻辑运算符有哪些?
C语言提供三种逻辑运算符,按优先级高低它们分别是:逻辑非(!),逻辑与(&&)、逻辑或(||)。运算规则:&&:当且仅当两个运算量的值都为“真”时,运算结果为“真”,否则为“假”。|| :当且仅当两个运算量的值都为“假”时,运算结果为“"假”,否则为“真”。! :当运算量的值为“真”...

c语言中逻辑与运算符是什么?
C语言中的逻辑与运算符(AND)符号是"&"。在C语言中,逻辑与运算符"&"用于判断两个条件是否同时满足。如果两个操作数都为真(非零),则结果为真(非零),否则结果为假(零)。例如,以下代码将打印"Both true",因为第一个和第二个条件都为真:int a = 1; int b = 2; if (a & b)...

c语言逻辑运算符有哪些
C语言逻辑运算符分别是:或(||)、且(&&)、非(!),分别对应于命题逻辑中的OR、AND、NOT运算。逻辑运算符:或||。在命题逻辑中,当P=1或Q=1时,P||Q等于1。逻辑运算符:且&&。在命题逻辑中,当P=1且Q=1时,P&&Q才等于1。逻辑运算符:非!。在命题逻辑中,当P等于0时,!P等于1,...

c语言中的逻辑运算符有哪些?
C语言中的逻辑运算符:&&(与运算)、||(或运算)、!(非运算)。与运算符(&&)和或运算符(||)均为双目运算符。具有左结合性。非运算符(!)为单目运算符,具有右结合性。逻辑运算符和其它运算符优先级的关系可表示如下:本来没有错误,关系运算符都是按“非与或”顺序来运算的。但是,不同的编...

C语言的逻辑运算符有哪些?
1.&& 2.|| 3.!

C语言中的逻辑运算符有哪些?
和false(假),在C语言中true用1表示,false用0表示。需要注意的是,在C语言中并没有逻辑数据类型,在需要保存逻辑值时,可以用整型类型保存。例如:int x=10,y=20;int c = (x>y);\/\/x>y此表达式为假,则整个表达式的值为0,即c变量的值为0;printf(“c=%d\\n”,c);\/\/结果:c=0 ...

为什么C语言中&&是逻辑运算符?
c语言中&&是一种双目运算符,表示与运算,而当左边所给表达式或变量为0时,不再计算右侧,整个表达式为零。“&&”表示与,意为同时都要满足,属于逻辑运算符。逻辑运算符总共有3个,分别是"&&"、"||"和"!"。a && b,一假必假,结合性从左至右。||是逻辑或运算符,a || b,一真必真,...

在C语言中,逻辑与、逻辑或和逻辑非有什么区别?
在C语言中,逻辑与(&&)、逻辑或(||)和逻辑非(!)是三种基本的逻辑运算符。它们分别用于连接布尔表达式并判断它们的真假。逻辑与(&&):逻辑与连接两个布尔表达式,只有当两个表达式的值都是真时,整个表达式的值才是真。否则,整个表达式的值就是假。例如:逻辑或(||):逻辑或连接两个布尔...

c语言中的运算符有哪些?
C语言中的运算符包括以下几种:1. 算术运算符:包括加法运算符(+)、减法运算符(-)、乘法运算符(*)、除法运算符(\/)和取余运算符(%)。2. 关系运算符:包括相等运算符(==)、不等运算符(!=)、大于运算符(>)、小于运算符(<)、大于等于运算符(>=)和小于等于运算符(<=)。3...

C语言中的 与或非运算
C语言中的与、或、非是C语言的逻辑运算符。1、逻辑与 在C语言中逻辑与用&&表示。举例:a&&b(其中a、b都代表一个条件)如果a和b都为真,则结果为真,如果a和b中有一个条件为假,则结果为假。2、逻辑或 在C语言中逻辑或用||表示。举例:a||b(其中a、b都代表一个条件)如果a和b有一个...

四方区19527306540: 关于C语言逻辑运算符一道简单的题目! -
呼霭鹿茸: 这是逻辑运算符的短路判断造成的! 由于逻辑运算符||和&&实现判断左值的,显然如果根据左值就能够判断整个表达式真假的话,那剩下的就不用判断了!目前的C编译就是这样处理的! 对于逻辑或||,左值为真,整个表达式就为真; 对于逻辑与&&,左值为假,整个表达式就为假!++x||++y&&++z中先执行逻辑或||左边的++x后x=1,左值为真,后面的自然就不用处理了!

四方区19527306540: 一道C语言的逻辑运算问题 很基础的 求解答16.下面程序的输出结果是 A . main() {int x,y,z; x=y=1; z=x++ - 1; printf(“%d,%d\t”,x,z); z+= - x+++(++y||++z); printf(... -
呼霭鹿茸:[答案] ++y等于2,++z等于1,“或”的结果为1.-x++=-2,所以z=-1. 对于数字,“非零”即为真 所以4||5=1,3&&2=1

四方区19527306540: 几个关于逻辑运算的C语言题目 -
呼霭鹿茸: 哦,这个我知道,书上和老师都会提到这个问题的,在逻辑运算中会出现“短路”的现象,例如“&&”并列语句当中如果第一个为假的话就结果直接为零,不执行后面的运算;“||”或语句中如果第一为真结果直接为1,不执行后面的语句.这样你就明白为什么第一道题中的n不是0而是原来的值2,第二道题仲的y是3而不是4,第三道题仲的b是0而不是1啦

四方区19527306540: c程序中表达式a=a+=a*5的a值是多少?其中a=3如题 -
呼霭鹿茸:[答案] 解答这道题目首先要知道C语言程序运算符的优先级关系,然后就可以很简单的解答了. 对于C语言程序运算符的优先级关系我就不多介绍了,你是学这个的,自己去查看一下就OK了. 这道题目,首先等价于a=(a+(a*5)),故结果为18.

四方区19527306540: c语言的一道关于逻辑表达式的题!关于表达式“2>1>0?3>2>1:4>3>2?5>4>3:6>5>4"的描述中,说法正确的是()A:表达式语法错误.B:表达式的值为0.... -
呼霭鹿茸:[答案] 1.关系运算符“>”的优先级比条件运算符“? :”高,并且,“>”运算方向是从左往右,“? :”运算方向是从右往左,根据该规则,可以计算上式.2.上式等价于:(2>1>0 ? 3>2>1 :(4>3>2 ? 5>4>3 :6>5>4) )从内往外展开,4...

四方区19527306540: C语言,逻辑运算的例题,答案到底是(B)还是(D),麻烦分析一下. -
呼霭鹿茸: 运算符的优先级和表达式的求值顺序是两个不同的概念,两者没有直接关系.“圆括号的优先级最高,先算”解析从这一句话开始就是错误的,故之后的内容可以无视.&&运算符是一个顺序点,在程序经过顺序点时,之前的所有表达式必须已...

四方区19527306540: 一题逻辑运算的C语言题目...跪求 -
呼霭鹿茸: main( ) { int x,y,z;x=y=z=0;++x||++y&&++z;//因为&&的运算级高于||而且运算顺序都是从左到右,所以当执行||前面的++x内容非零以后,后面的两项不管是什么值都不影响结果,所以后面的程序就不编译了//这句话等同于++x的效果,得到X=1 ...

四方区19527306540: C语言逻辑关系运算符判断题22 - 24题 详细讲解下啊 -
呼霭鹿茸: 22. 值为0,也就是 false,假 的意思咯.A 单引号'' 引起来,表示字符,肯定是真.B x=3 < y=4 ,真C 根据优先级:y=z 假, x 真, x || false 为真; y-z=-1...

四方区19527306540: C语言的问题,一道逻辑表达式的题
呼霭鹿茸: 以上有运算的顺序!你的这个问题是从左向右的运算!先算“()”内的,然后再算“!” 再算&&你就可以发现!(X=3)=“1”(表示为:(0)(假))&&y=4(表示为:1(真))整个值就为:假(0)依次算出整个表达式为:0(假)

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