C语言问题求详解

C语言问题求详解2&&2与2&2有什么区别?6.3/3=2.1还是2?谢谢大神... C语言问题求详解2&&2与2&2有什么区别?
6.3/3=2.1还是2?
谢谢大神
展开
 我来答
microroom
科技发烧友

2017-09-19 · 智能家居/数码/手机/智能家电产品都懂点
知道大有可为答主
回答量:7118
采纳率:83%
帮助的人:1522万
展开全部
2&&2与2&2有什么区别?
&&是逻辑与运算符,对于a&&b,当a和b都是非0时,a&&b返回1,否则返回0,即&&只返回1(代表真)或0(代表假),且&&是短路运算符,当a为0时,不再执行表达式b。而&是按位与运算符,对于a&b,每次都要执行表达式a与表达式b,且a&b的结果是由按位运算计算后确定的,不只有0和1。对于对应位置的比特位1&1=1,1&0=0,0&1=0,
因此,2&&2的结果是1,2&2的结果是2。
计算2&2的过程如下:
00...010(2的2进制表示)
2&2=00...010&00...010=00...010(等于2)

6.3/3=2.1还是2?
对于/运算符,如果计算的两个数都是整数,则进行整除,如果至少有一个是浮点数,则进行小数除法,因此6.3/3的结果是2.1
追问
3&5等于多少
听不清啊
高粉答主

2017-09-19 · 说的都是干货,快来关注
知道顶级答主
回答量:7.8万
采纳率:89%
帮助的人:1.9亿
展开全部
2&&2是逻辑与运算,值为真(1)
2&2是按位与运算,值是一个整数(2)
6.3/3=2.1,实数与整数运算时,先将整数自动转换为实数,运算结果也是一个实数。
追问
3&0.5等于多少
追答
位运算操作符只能应用于整数类型
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2017-09-19
展开全部
6.3 是浮点数,所以是 2.1

~
~
~
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式