C语言中y=!a+b<c&&(b!=c)和z=c/b+((float)a/b&&(float)(a/c));什么意思

整个是#include<stdio.h>#include<conio.h>main(){inta=3,b=4,c=5,x,y,z;x=c,b,a;y=!a+b<c&&(b... 整个是
#include<stdio.h>
#include<conio.h>
main()
{
int a=3,b=4,c=5,x,y,z;
x=c,b,a;
y=!a+b<c&&(b!=c);
z=c/b+((float)a/b&&(float)(a/c));
printf("\n x=%d,y=%d,z=%d",x,y,z);
x=a||b--;
y=a-3&&c--;
z=a-3&&b;
printf("\n%d,%d,%d,%d,%d",a,b,c,x,y,z);
getch();
}
展开
 我来答
绝妙又纯美灬爱人T
推荐于2018-03-13 · TA获得超过181个赞
知道小有建树答主
回答量:138
采纳率:100%
帮助的人:124万
展开全部
y=!a+b<c&&(b!=c)
首先判断a+b<c 是否为真,此处为假,返回0,再判断b!=c为真返回1,然后!逻辑非运算开始判断!a+b<c 为真,返回1 ,然后逻辑与运算符开始判断 1 && 1 ,返回为真,所以此处y为1;

z=c/b+((float)a/b&&(float)(a/c));
这句话就很好理解了,首先运算((float)a/b 部分,返回一个小于1的小数,为真,返回1,
(float)(a/c)返回0值,所以 1&&0 返回0,z=c/b+0;c/b为真,及因为b!=0,c可以除以b,返回真,即为1,所以最后z=1+0=1.
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式