c# 除法运算 ;/运算符;%运算符

1.c# 除法运算 ,且保留小数

(13*1.0f) / 6

结果

2.1666666666666665

2.C# 保留小数位数的方法

 转自:https://www.cnblogs.com/abeam/p/8406054.html

前言

本文主要介绍 C# 中实现小数位数的保留,完成对小数位数四舍五入的几种方法。

1.使用 Math.Round() 方法

说明:

1)   其实使用 Math.Round() 方法,是根据国际标准(五舍六入)的方式进行取舍的。

2)   进1的情况有两种:1)保留小数位后面第1位大于等于6;2)保留小数位后面第1位等于5,则第2位必须大于0。

double double1_1 = Math.Round(1.545, 0);            //2.0double double1_2 = Math.Round(1.545, 1);            //1.5double double1_3 = Math.Round(1.545, 2);            //1.54double double1_4 = Math.Round(1.5451, 2);           //1.55double double1_5 = Math.Round(1.546, 2);            //1.55

2.使用 Decimal.Round() 方法

说明:小数取舍与 Math.Round() 方法相同。

decimal decimal2_1 = decimal.Round(1.545m, 0);      //2Mdecimal decimal2_2 = decimal.Round(1.545m, 1);      //1.5Mdecimal decimal2_3 = decimal.Round(1.545m, 2);      //1.54Mdecimal decimal2_4 = decimal.Round(1.5451m, 2);     //1.55Mdecimal decimal2_5 = decimal.Round(1.546m, 2);      //1.55M

3.使用 ToString() + NumberFormatInfo

说明:标准的四舍五入法,更适合中国人的习惯哦。

NumberFormatInfo nfi3_1 = new NumberFormatInfo();nfi3_1.NumberDecimalDigits = 0;string str3_1 = 1.545d.ToString("N", nfi3_1);       //"2"nfi3_1.NumberDecimalDigits = 1;string str3_2 = 1.545d.ToString("N", nfi3_1);       //"1.5"nfi3_1.NumberDecimalDigits = 2;string str3_3 = 1.545d.ToString("N", nfi3_1);       //"1.55"nfi3_1.NumberDecimalDigits = 2;string str3_4 = 1.5451d.ToString("N", nfi3_1);      //"1.55"nfi3_1.NumberDecimalDigits = 2;string str3_5 = 1.546d.ToString("N", nfi3_1);       //"1.55"

4.使用 ToString() + 格式化字符

说明:标准的四舍五入法,更适合中国人的习惯哦。

string str4_1_1 = 1.545d.ToString("N0");            //"2"string str4_1_2 = 1.545d.ToString("N1");            //"1.5"string str4_1_3 = 1.545d.ToString("N2");            //"1.55"string str4_1_4 = 1.5451d.ToString("N2");           //"1.55"string str4_1_5 = 1.546d.ToString("N2");            //"1.55"//ToString() 的简单方法string str4_2_6 = 1.545d.ToString("0");             //"2"string str4_2_7 = 1.545d.ToString("0.0");           //"1.5"string str4_2_8 = 1.545d.ToString("0.00");          //"1.55"string str4_2_9 = 1.5451d.ToString("0.00");         //"1.55"string str4_2_10 = 1.546d.ToString("0.00");         //"1.55"

5.使用 String.Format() 方法

说明:标准的四舍五入法,更适合中国人的习惯哦。

string str5_1 = string.Format("{0:N0}", 1.545d);    //"2"string str5_2 = string.Format("{0:N1}", 1.545d);    //"1.5"string str5_3 = string.Format("{0:N2}", 1.545d);    //"1.55"string str5_4 = string.Format("{0:N2}", 1.5451d);   //"1.55"string str5_5 = string.Format("{0:N2}", 1.546d);    //"1.55"

6.将数字转为“%”百分号字符串

string str6_1 = 0.545d.ToString("P", new NumberFormatInfo
{PercentDecimalDigits = 2,       //转换后小数保留的位数,默认为2PercentPositivePattern = 1      //%号出现的位置:1 数字后面,2 数字前面,默认为0}); //"54.50%"

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/754871.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

iview 不请求接口修改table本地数据 不刷新的本质问题以及最简单的解决方法

在日常的开发中,相信大家都遇到过这样的问题,通过请求接口,而后赋值table数据,页面都是正常的刷新渲染的,但是有时,不需要请求接口,只修改本地的固定数据的话,页面的table表格数据却…

2024年旅游经济与文化传播国际会议(ICTECC 2024)

2024年旅游经济与文化传播国际会议(ICTECC 2024) 2024 International Conference on Tourism Economy and Cultural Communication 会议简介: 旅游经济与文化传播之间存在密切的关系。旅游经济是以旅游活动为依托,通过旅游资源…

【每日力扣】 修剪二叉搜索树与复原 IP 地址

🔥 个人主页: 黑洞晓威 😀你不必等到非常厉害,才敢开始,你需要开始,才会变的非常厉害。 669. 修剪二叉搜索树 给你二叉搜索树的根节点 root ,同时给定最小边界low 和最大边界 high。通过修剪二叉搜索树&am…

Git 仓库瘦身与 LFS 大文件存储

熟悉 Git 的小伙伴应该都知道随着 Git 仓库维护的时间越来越久,追踪的文件越来越多,git 存储的 objects 数量会极其庞大,每次从远程仓库 git clone 的时候都会墨迹很久。如果我们不小心 git add 了一个体积很大的文件,且 git push…

Linux和Windows类似的命令

以下是一些常用的Linux命令,它们类似于Windows的cmd命令: Windows cmd 命令 对应的 Linux 命令 dir ls cd cd copy cp del rm mkdir mkdir rmdir …

Linux系统(四)- 进程初识 | 环境变量 | 进程地址空间

~~~~ 前言冯诺依曼体系结构(重要)总览CPU工作方式什么是指令集?CPU为什么只和内存打交道(数据交换)?木桶效应:在数据层面的结论程序运行为什么要加载到内存? 进一步理解计算机体系结…

MySQL—数据库导入篇

什么是数据库? 数据库是干啥的? 数据库(Database)是按照数据结构来组织、存储和管理数据的仓库。 MySQL属于哪一类数据库? MySQL是一种关系型数据库。所谓的关系型数据库,是建立在关系模型基础上的数据库&a…

java项目打包(maven+原生)

一、maven打jar包 1.1 没有第三方依赖的jar java -jar maven项目打包提示.jar中没有主清单属性 <build><finalName>${project.artifactId}</finalName><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifact…

Cesium:绘制一个 3DTiles 对象的外包盒顶点

作者:CSDN @ _乐多_ 本文将介绍如何使用 Cesium 引擎根据模型的中心坐标,半轴信息,绘制一个 3DTiles 对象的外包盒顶点。 外包盒是一个定向包围盒(Oriented Bounding Box),它由一个中心点(center)和一个包含半轴(halfAxes)组成。半轴由一个3x3的矩阵表示,这个矩阵…

学习python笔记:9,with,requests,os,set,list,enumerate,numpy.array

with语句 在Python中&#xff0c;with语句用于确保某段代码执行完毕时&#xff0c;资源&#xff08;如文件对象、网络连接等&#xff09;可以被正确地清理。这通常涉及到使用上下文管理协议&#xff0c;该协议要求一个对象实现__enter__()和__exit__()两个方法。 with语句的基…

常见视频名词及视频格式

常见视频名词 时长&#xff1a;视频时间单位&#xff0c;基本单位&#xff1a;秒&#xff0c;常见格式&#xff1a;00:00:00:00&#xff08;时&#xff1a;分&#xff1a;秒&#xff1a;帧&#xff09; 帧&#xff1a;视频的基础单位 视频也是一帧一帧组成的&#xff0c;他是…

Java安全基础 关键概念过关

Java安全基础 关键概念汇总 文章目录 Java安全基础 关键概念汇总前置知识1.构造器this以及包的使用2.继承3.重写/ 重载 / super4.多态5.区分和equals方法6.toString的使用7.Object的概念8.static,final,代码块static代码块final 9.动态代理10.类的动态加载1)类加载器含义&#…

卷积篇 | YOLOv8改进之C2f模块融合SCConv | 即插即用的空间和通道维度重构卷积

前言:Hello大家好,我是小哥谈。SCConv是一种用于减少特征冗余的卷积神经网络模块。相对于其他流行的SOTA方法,SCConv可以以更低的计算成本获得更高的准确率。它通过在空间和通道维度上进行重构,从而减少了特征图中的冗余信息。这种模块的设计可以提高卷积神经网络的性能。本…

常用的vim和linux命令

常用的vim命令和linux命令 vim编辑器有三种模式 命令模式、编辑模式、末行模式 模式间切换方法&#xff1a; 1.命令模式下&#xff0c;输入&#xff1a;后&#xff0c;进入末行模式 2.末行模式下&#xff0c;按esc慢退、按两次esc快退、或者删除所有命令&#xff0c;可以回…

如何正确从github上下载数据集等内容

文章目录 一、现象&#xff1a;二、解决方案 一、现象&#xff1a; 数据集点击下载没有反应&#xff0c;那需要怎么下载数据集呢&#xff1f; 二、解决方案 输入以下命名行&#xff0c;亲测有效 git clone https://github.com/mymusise/ChatGLM-Tuning.git

LeetCode每日一题[C++]-1793.好子数组的最大分数

题目描述 给你一个整数数组 nums &#xff08;下标从 0 开始&#xff09;和一个整数 k 。 一个子数组 (i, j) 的 分数 定义为 min(nums[i], nums[i1], ..., nums[j]) * (j - i 1) 。一个 好 子数组的两个端点下标需要满足 i < k < j 。 请你返回 好 子数组的最大可能…

【ADF4351】使用FPGA进行SPI寄存器配置、使用FPGA计算各个频率的频点,ADF4351配置程序

简介 特性 输出频率范围&#xff1a;35 MHz至4,400 MHz 小数N分频频率合成器和整数N分频频率合成器 具有低相位噪声的VCO 可编程的1/2/4/8/16/32/64分频输出 典型抖动&#xff1a;0.3 ps rms EVM(典型值&#xff0c;2.1 GHz)&#xff1a; 0.4% 电源&#xff1a;3.0 V至3.6 V …

Selenium 自动化 —— 使用WebDriverManager自动下载驱动

上一篇文章 入门和 Hello World 实例 中&#xff0c;我们提供了一个最简单的 Selenium 上手的例子。 但是某一天&#xff0c;突然发现相同的代码居然运行报错了。这是怎么回事呢&#xff1f; 日志排查 日志中其实提示的很明显了&#xff1a;Chrome浏览器和Chrome WebDriver的…

adobe animate 时间轴找不到编辑多个帧按钮

如题&#xff0c;找了半天&#xff0c;在时间轴上找不到编辑多个帧按钮,导致无法批量处理帧 然后搜索发现原来是有些版本被隐藏了&#xff0c;需要再设置一下 勾选上就好了

day0 3r文档docker部署

3R编码 | 3R教室 - 最好的数字游民学习与交流俱乐部! (3rcd.com) window安装wsl下载不下来&#xff0c;正好有个服务器&#xff0c;就用linux吧密钥长度不匹配&#xff0c;设置一下长度即可 文档启动不成功&#xff0c;单独下载了下nginx&#xff0c;docker pull nginx:latest …