long类型除以long类型的是四舍五入?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了long类型除以long类型的是四舍五入?相关的知识,希望对你有一定的参考价值。
我看的是《c语言入门经典》,发现那书说是四舍五入。
于是我用这个来验证,
#include <stdio.h>
int main (void)
long A = 809L;
long B = 90L;
long C = 811L;
printf ("米:%ld, 分米:%ld.",A/B,A%B);
printf ("米:%ld, 分米:%ld.",C/B,C%B);
return 0;
还有:
#include <stdio.h>
int main (void)
long A = 809L;
long C = 811L;
printf ("米:%ld, 分米:%ld.",A/90,A%90);
printf ("米:%ld, 分米:%ld.",C/90,C%90);
return 0;
结果都输出:
Microsoft Windows XP [版本 5.1.2600]
(C) 版权所有 1985-2001 Microsoft Corp.
C:\Documents and Settings\Administrator>C:\lcc\projects\lcc\long.exe
米:8, 分米:89.米:9, 分米:1.
C:\Documents and Settings\Administrator>C:\lcc\projects\lcc\long.exe
米:8, 分米:89.米:9, 分米:1.
C:\Documents and Settings\Administrator>
那书说的四舍五入在哪里体现了啊??
int a,b,c;
c=(int)(a/b+0.5);//这样才是四舍五入。
还有,注意常量不要写成809L这种形式(809就可以了),不是所有的编译器都支持的。 参考技术A 四舍五入你就在最后加0.5.那样就行。 参考技术B 不会四舍五入 比如 2除3 也会是0。
以上是关于long类型除以long类型的是四舍五入?的主要内容,如果未能解决你的问题,请参考以下文章
java中将一个double类型的数强制转换为long 型是四舍五入吗?
java中将一个double类型的数强制转换为long 型是四舍五入吗?