设a=3,b=4,c=5试计算以下表达式:(1)a=b>c&&b==c (2)a||b+c&&b-c (3)(!(a+b)+c-1)&&(b+c)/2 20
拜托各位高手帮帮忙~~十万火急,帮忙解一下~~小弟十分感激!!麻烦写下具体过程,也让小弟,知道怎么来的答案!谢谢~~~用C语言!!!就是计算值~~~要过程!!!...
拜托各位高手帮帮忙~~十万火急,帮忙解一下~~小弟十分感激!!麻烦写下具体过程,也让小弟,知道怎么来的答案!谢谢~~~
用C语言!!!
就是计算值~~~
要过程!!! 展开
用C语言!!!
就是计算值~~~
要过程!!! 展开
3个回答
展开全部
(1) a=b>c && b==c
b>c 为 false => a=b>c为 false => (1)式为false
(2) a || b+c&&b-c
a = 3 != 0 => (2)式为true
(3)(!(a+b)+c-1)&&(b+c)/2
!(a+b) == 0 => (!(a+b)+c-1) == 4 为 true
又(b+c)/2 != 0 所以 (3)式为true
结果为 0 1 1
C语言中采用的是短路计算方式,一旦确定了表达式的值就不会再去计算未确定的因子 例如 a && b 如果 a为false 则整个表达式为 false, b的值不会计算; 如果 a 为true 则再计算b的值来确定整个表达式的值。
你可以编程测试
#include <stdio.h>
#include <stdlib.h>
void main()
{
int a, b, c;
a = 3;
b = 4;
c = 5;
int x, y, z;
x = ( a=b>c&&b==c );
y = ( a||b+c&&b-c );
z = ((!(a+b)+c-1)&&(b+c)/2);
printf( "x=%d, y=%d, z=%d \n", x, y, z);
}
b>c 为 false => a=b>c为 false => (1)式为false
(2) a || b+c&&b-c
a = 3 != 0 => (2)式为true
(3)(!(a+b)+c-1)&&(b+c)/2
!(a+b) == 0 => (!(a+b)+c-1) == 4 为 true
又(b+c)/2 != 0 所以 (3)式为true
结果为 0 1 1
C语言中采用的是短路计算方式,一旦确定了表达式的值就不会再去计算未确定的因子 例如 a && b 如果 a为false 则整个表达式为 false, b的值不会计算; 如果 a 为true 则再计算b的值来确定整个表达式的值。
你可以编程测试
#include <stdio.h>
#include <stdlib.h>
void main()
{
int a, b, c;
a = 3;
b = 4;
c = 5;
int x, y, z;
x = ( a=b>c&&b==c );
y = ( a||b+c&&b-c );
z = ((!(a+b)+c-1)&&(b+c)/2);
printf( "x=%d, y=%d, z=%d \n", x, y, z);
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
按!(非)>算术运算符>关系运算符>&&和||>赋值运算符的方法来求这个式子,算出来是个逻辑值
第一题,先看&&两面的B==C为假,所以答案为假,有一方为假时结果为假。
第二题,为真,例:a&&b的值为1。因为a和b均为非0,被认为真
第三题,为真
运算顺序!>&&>||
not>and>or
这因该是C程序设计的基础
第一题,先看&&两面的B==C为假,所以答案为假,有一方为假时结果为假。
第二题,为真,例:a&&b的值为1。因为a和b均为非0,被认为真
第三题,为真
运算顺序!>&&>||
not>and>or
这因该是C程序设计的基础
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不懂你要求什么
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询