C语言中,表达式5+1 2的运算结果为什么是5,而不是

2021-02-26 18:57:06 字数 1595 阅读 6025

1楼:匿名用户

在c语言里,整数相除取整数,要想得到小数只要改其中一个为小数即可如:1.0/2

或1/2.0,或两个都改

2楼:匿名用户

是不是整数类型的运算~

3楼:匿名用户

/和\一个是整除一个是余处

4楼:丫丫

c语言默认为int取整的,也就是只保留整数部分。要想修改需要添加单词float。

为什么c语言表达式中 5+1/2 等于5

5楼:申素枝孟雨

1/2为整除,值为零,所以式子等价于5+0,结果为5。之所以会出现这样的情况是因为1和2都为整型数,直接相除其结果也为整形,而0.5转换为整形后为0,所以最终值为5。

如果想要得到5.5这个值的话可以通过一个格式的自动转换过程,让除数与被除数中的一个成为浮点型数据,即5

+1.0/2

或者5+1

/2.0。

6楼:奇爱景说春

这个四则运算中,除法的优先级是高于加法的,先做1/2,由于1和2都是整数,所以除法的结果也是整型,为0.

0+5=5,所以最后的结果是5

7楼:脱廷谦频鹃

5+1/2在c语言中确实等于5。

原因如下:

/是c语言中算术运算符中的除号;

该符号同时具有整数除和实数除的功能,当两个运算对象都是整数就做整数除,有一个运算对象是浮点数时就执行实数除。

所谓整数除就是舍弃余数,只留下商;因此5/2的结果是2,而5.0/2的结果是2.5。

显然1/2是整数除,商位0,所以5+0还是等于5。

8楼:佟佳亮狂戊

5+1/2

1/2优先级高先执行,执行后因为1和2被系统默认整形,隐式转换0.5->0

5+0=5

在c语言中表达式1÷2+1÷4+1÷5运算后得到怎样的结果?

9楼:冬一又二分之一

会输出0.00000000

只有加上.0才能输出正确结果:

望采纳!

c语言中,为什么表达式1/2的值为0,5/2的值为2?

10楼:天雨下凡

c语言中,整数相除,结果还是整数,取整,不进行四舍五入,直接丢掉小数部分

数学中1/2=0.5,c语言取整为0,同理:

数学中5/2=2.5,c语言取整为2

11楼:

参与计算的都是整型数吧,结果也是整型

1/2=0.5转为整型后小数部分被丢掉,整数部分为0

5/2=2.5转为整型后小数部分被丢掉,整数部分为2

在c语言中,为什么1/2的运算结果为0;1.0/2.0的结果为0.5

12楼:滑映寒愈霁

因为除号两边都是整数,1/2的结构是0.5,取整数以后就是0

第二个是因为除数与被除数有一个是小数结果不会取整数,就是0.5

c语言里(21)什么结果,在C语言中(-1)&&(-1)结果是?

1楼 匿名用户 是逻辑与运算,其结果只能是0或1, 当参与运算的两个数中有一个是0,其结果就是02是非0值 1也是非0值 所以, 2 1 的结果是1 在c语言中 1 1 结果是? 2楼 匿名用户 在c或c 中 是与的操作符,只要操作符两边都为真 不为0就为真 ,结果就为真。因为 1的二进制码 1的二...

c运算符-与什么等效,C语言的运算符和表达式有哪些

1楼 醒目鸟 1 表示比特位右移。效果与 除以 类似。右移一位即除以2,右移2位即除以4,右移3位即除以8 例如 数字8的二进制码为 00001000 右移一位后变为 00000100。 即00000100 4 2 还有一种含义 在c 里表示堆栈的指针位置。例如 this data 2楼 千锋教育 ...

c语言中int a 1,b 2,c c 1.0 b a输出结果为什么

1楼 匿名用户 结果是c的值是0 因为1 0 b 都会转换位浮点型,结果是0 5 0 5 a 也是会把a转为浮点型,结果是0 5 而c是整形,会对右边运算的结果取整,所结果就是0了。 假如 int a 1 b 2 c 3 表达式a b c的值是1还是0 为什么? 2楼 岔路程序缘 在c语言中,1代表...