C#中两个整数相除得到带小数点的结果

有时候需要将两个整数相除,获得带小数点的float类型数。例如一个整数12345,需要变成123.45。常见与串口与硬件通讯,DSP处理浮点型比较麻烦,DSP传递来的温度等数据都以整型的方式传递,串口控件接收到数据后,需要将温度值变成实际的值,就可能采用这种方式了。

例如:

int itemp=3706; //实际值37.06℃
int iNum=100;

float ftemp = itemp/ iNum;
那么结果就是37;而需要得到带小数点的结果,有以下几种方法:

1.double dtemp = Convert.ToDouble(Convert.ToDouble(itemp) / Convert.ToDouble(iNum));

(这种方法比较麻烦)

2.float ftemp = (float)itemp/ iNum;

3.float ftemp = itemp* 1.0f / iNum;

后两种方法就比较好了。

最后,ftemp =37.06

时间: 2024-10-08 22:54:51

C#中两个整数相除得到带小数点的结果的相关文章

python中两个整数相除得到浮点数的值的方法

/********************************************************************* * Author  : Samson * Date    : 09/19/2014 * Test platform: *              Linux ubuntu 3.2.0-58-generic-pae *              GNU bash, version 4.2.39 * *****************************

【LeetCode-面试算法经典-Java实现】【029-Divide Two Integers(两个整数相除)】

[029-Divide Two Integers(两个整数相除)] [LeetCode-面试算法经典-Java实现][所有题目目录索引] 原题 Divide two integers without using multiplication, division and mod operator. If it is overflow, return MAX_INT. 题目大意 不使用除法,乘法和取余,求两个整数的相除的结果,如果有溢出就返回最大的整数. 解题思路 任何一个整数可以表示成以2的幂为底

java 两个整数相除保留两位小数

java中,当两个整数相除时,由于小数点以后的数字会被截断,运算结果将为整数,此时若希望得到运算结果为浮点数,必须将两整数其一或是两者都强制转换为浮点数. 例如: (float)a/b // 将整数其中一个强制转换为浮点数,再与另一个整数相除 a/(float)b (float)a/(float)b // 将两个整数同时强制转换为浮点数后再相除 float num= (float)2/3; DecimalFormat df = new DecimalFormat("0.00");//格

不同数据库中两列字段相减(某列有空值)

数据库中两个字段相减(某列有空值)处理方法: sql server中:select (isnull(字段1,0)-isnull(字段2,0)) as 结果 from 表 oracle中:select (nvl(字段1,0)-nvl(字段2,0)) as 结果 from 表 mysql中:select (ifnull(字段1,0)=ifnull(字段2,0)) as 结果 from 表 不同数据库中两列字段相减(某列有空值),码迷,mamicode.com

【测试】两个日期相减得到一个小数点的值

今天做了一个小小的练习,两个日期相减,得到一个有小数点的值, SQL> select last_name,(sysdate-hire_date) as day 2 from employees 3 where department_id = 90; LAST_NAME DAY ------------------------- ---------- King 4900.49736 Kochhar 4073.49736 De Haan 5785.49736

LeetCode 29 Divide Two Integers(两个整数相除)(*)

翻译 不用乘法.除法.取余操作,将两个数相除. 如果它溢出了,返回MAX_INT 原文 Divide two integers without using multiplication, division and mod operator. If it is overflow, return MAX_INT. 代码 一心扑到了递归上,可惜没能写出来----烦躁至极还是找了别人的答案-- class Solution { public: int divide(int dividend, int d

Python3基础 两个除号 两个整数相除 得到商的整数部分

镇场诗: 诚听如来语,顿舍世间名与利.愿做地藏徒,广演是经阎浮提. 愿尽吾所学,成就一良心博客.愿诸后来人,重现智慧清净体.------------------------------------------ ex: >>> num=10 >>> den =3 >>> num // den 3 ------------------------------------------博文的精髓,在技术部分,更在镇场一诗.Python版本3.5,系统 Wind

Java两整数相除保留两位小数

在Java中 两个整数相除 会做取整运算,此时如果希望得到运算结果为浮点数 则必须将两整数其一或两者都强制转为为浮点数 例如: int a = 9; int b = 2; System.out.println((float)a/b); System.out.println(a/(float)b); System.out.println((float)a/(float)b); 保留两位小数 DecimalFormat df = new DecimalFormat("0.00"); Str

华为机试—整数相除

两个整数相除,将结果用字符串返回.如果是循环小数,将循环的位用括号括起来. 函数原型为 void div(const int a,const int b,char *str) 输入:1 3 输出:0.(3) #include<iostream> #include<string> using namespace std; int maxn = 100; //设置字符串的最大位数 int reminder_exist[10000]; int reminder_pos[10000]; v