用C#怎么判定一个数是整数还是小数?

来源:百度知道 编辑:UC知道 时间:2024/05/17 20:44:04
我的方法是把一个变量定义成float,如下:
float a;
if (a - (int)a != 0); ///这样可以确定是小数;
方法2:
float a;
if (a % 1 != 0); ///这样也行;

可是这些方法都不能判定诸如1.0 2.0 之类的小数,请问各位高手有什么好办法....

你说的应该跟程序的界面设计有关吧,你可以这样做。不过沙发说的有道理,的确没有什么意义,取值的确都一样的。我的思路是转化为字符串然后判断:
float a;

......//运算对a赋值

string str_a=Convert.ToString(a);
int dot=str_a.IndexOf(".");
string substr=a.Substring(dot+1);
bool hasnotzerochar=false;//记录是否小数点后存在不为0的字符
for (i=0;i<substr.Length();i++)
{
if (substr[i]!="0")
{
hasnotzerochar=true;
}
}
这样,你只需要判断hasnotzerochar是否为true就可以知道了?对不对?

博客欢迎访问:http://www.mygao.net

你是穷极无聊了想这种问题吧

你定义float a;就已经把数设为小数了
即使你存储的时候 把a设为整数5或者5.0
出来的时候也都是5.0

没什么差别了

这没法判定,因为对于计算机来说它是一样的。

这个问题无法解决。。