请问C语言中 !(a||b) 和!a&&!b 等价吗?
来源:学生作业帮 编辑:百度作业网作业帮 分类:综合作业 时间:2024/06/26 03:38:39
请问C语言中 !(a||b) 和!a&&!b 等价吗?
![请问C语言中 !(a||b) 和!a&&!b 等价吗?](/uploads/image/z/4312697-41-7.jpg?t=%E8%AF%B7%E9%97%AEC%E8%AF%AD%E8%A8%80%E4%B8%AD+%21%28a%7C%7Cb%29+%E5%92%8C%21a%26%26%21b+%E7%AD%89%E4%BB%B7%E5%90%97%3F)
答案是:等价
证明如下:
1.a = 0,b = 0时,a || b == 0,!(a || b) == 1,!a && !b == 1
2.a = 0,b = 1时,a || b == 1,!(a || b) == 0,!a && !b == 0
3.a = 1,b = 0时,和2相同
4.a = 1,b = 1时,a || b == 1,!(a || b) == 0,!a && !b == 0
用代码证明如下:
#include
int main()
{
int a,b;
a = 0,b = 0;
if ((!(a || b)) == (!a && !b)) printf("Equal.\n");
a = 1,b = 0;
if ((!(a || b)) == (!a && !b)) printf("Equal.\n");
a = 0,b = 1;
if ((!(a || b)) == (!a && !b)) printf("Equal.\n");
a = 1,b = 1;
if ((!(a || b)) == (!a && !b)) printf("Equal.\n");
return 0;
}
输出结果如下:
Equal.
Equal.
Equal.
Equal.
证明如下:
1.a = 0,b = 0时,a || b == 0,!(a || b) == 1,!a && !b == 1
2.a = 0,b = 1时,a || b == 1,!(a || b) == 0,!a && !b == 0
3.a = 1,b = 0时,和2相同
4.a = 1,b = 1时,a || b == 1,!(a || b) == 0,!a && !b == 0
用代码证明如下:
#include
int main()
{
int a,b;
a = 0,b = 0;
if ((!(a || b)) == (!a && !b)) printf("Equal.\n");
a = 1,b = 0;
if ((!(a || b)) == (!a && !b)) printf("Equal.\n");
a = 0,b = 1;
if ((!(a || b)) == (!a && !b)) printf("Equal.\n");
a = 1,b = 1;
if ((!(a || b)) == (!a && !b)) printf("Equal.\n");
return 0;
}
输出结果如下:
Equal.
Equal.
Equal.
Equal.
请问C语言中 !(a||b) 和!a&&!b 等价吗?
(a>b)&&!c语言中
请问C语言中a=b---c为什么是解释为a=(b--)-c
在C语言中,a+b>c&&a+c>b和(a+b>c)&&(a+c>b)相同吗
对数学式a*b/c,写出两个等价的C语言表达式
(a>b)?a:在C语言中
请问C语言中:a=a-b;b=a+b;a=b-a能实现两数据的交换吗?为什么?
C语言中a>b||c是什么意思
C语言中 if(a||b&&c) .
C语言中,a=(b,c) ,
与整型数学算式ab/(a+b)等价的C语言表达式是
矩阵等价变换问题如果 A~r~C(行等价) B~c~C(列等价) 那么R(A)=R(B)吗?