高手们,打扰一下,C语言基础,有几个问题想请教学霸和老师??
第一题:若int a=6,b=4,c=2,则表达式 !(a+b)+c-1&&b+c/2的值是?答案是1,但是具体过程无法理解为什么是等于1。
第二题:对于一个有向图,若一个顶点的入度为K1,出度为K2,则对应邻接表中该顶点单链表中的节点数为?
答案是K2,为什么是等于K2?
我不太容易理解,请详细解答,谢谢!
高手们,打扰一下,C语言基础,有几个问题想请教学霸和老师??
第一题:若int a=6,b=4,c=2,则表达式 !(a+b)+c-1&&b+c/2的值是?2024-06-28 04:09:49
2024-06-28 03:51:05
!(a+b)+c-1 && b+c/2 是逻辑表达式
先运算 !(a+b)+c-1, a+b=10 表示逻辑真, 用!取反之后得到逻辑假, 也就是 0, 然后 !(a+b)+c-1 = 0+2-1 = 1, 这部分表示逻辑真
再运算 b+c/2 = 4+2/2 = 5, 也表示逻辑真
所以两部分用 && 作用之后还是逻辑真, 按 C 语言标准, 这个逻辑表达式的值为 1 (类型为 int).
有向图的表示方法不唯一, 从你的答案来推断, 这里的表示方式是对每个节点存贮由该节点出发的边, 所以链表的长度等于该节点的出度.
2024-06-28 02:46:36