请选择 进入手机版 | 继续访问电脑版

无忧编程_ASP.NET  / C# / PHP 程序员的软件世界

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 876|回复: 0

c#中取整和取余的相关算法介绍

[复制链接]

369

主题

399

帖子

1651

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1651
发表于 2018-3-26 16:16:38 | 显示全部楼层 |阅读模式
c#中取整和取余的相关算法介绍
"%"为取余号,不用多说。   
"/"号现在整形运算是取整,浮点运算时为除法运算,如54/10结果为5,54.0/10.0结果为5.4而且取整时不进行四舍五入只取整数部分,如54/10和56/10是5.   
Math.Celling()取整数的较大数,相当于不管余数是什么都会进一位。如Math.Celling(54.0/10.0)结果为6.   
Math.Floor()取整数的较小数,相当于"/"号,即不管余数部分是什么都不进行进位。如Math.Floor(56.0/10.0)的结果是5.
代码如下: using System;
using System.Collections.Generic;
using System.Text;
namespace ConsoleApplication5
{ class Program { static void Main(string[] args)
{ Console.WriteLine("(54/10):{0}", 54 / 10);
Console.WriteLine("(56/10):{0}", 56/ 10);
Console.WriteLine("(54.0%10.0):{0}", 54.0 % 10.0);
Console.WriteLine("(56.0%10.0):{0}", 56.0 % 10.0);
Console.WriteLine("Math.Celling(54.0/10.0):{0}", Math.Ceiling(54.0 / 10.0));
Console.WriteLine("Math.Celling(56.0/10.0):{0}", Math.Ceiling(56.0 / 10.0));
Console.WriteLine("Math.Floor(54.0/10.0):{0}", Math.Floor(54.0 / 10.0));
Console.WriteLine("Math.Floor(56.0/10.0):{0}", Math.Floor(56.0 / 10.0)); } } }
C#中,关于除法"/"运算得一点问题。
  现在C#与法中,"/"除后所得的值的类型,跟他的除数和被除数的类型有关。如: int a=4; int b=5; float c=a/b ;   则结果为0(因为会先进行int的除法操作,得出结果0,再将结果转为float 0;);   总之,得出的数都是整形的,最终发觉原来除后所得的值的类型,跟他的除数和被除数的类型有关。所以,应写成: float a=3; float b=5; float c=a/b; 这样,才能得出正确的结论!


文章来自:https://www.cnblogs.com/cuihongyu3503319/p/4750890.html
windows .net(C#+MSSQL) linux(php+mysql)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|软件编程 ( 鄂ICP备11006601号鄂公网安备 42011102001337号 |

GMT+8, 2018-10-18 08:37 , Processed in 0.207551 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表