日期:2014-05-19  浏览次数:20845 次

一个数字问题,2894转3000,1转1000,5039转6000,就是取比所给数字大的整千数字,最快的方式是什么
自己头有点晕,呵呵

------解决方案--------------------
protected int ChangeToBigInt(int intPut)
{
char a=intPut.ToString()[0];
int b=(int.Parse(a.ToString())+1)*1000;
return b;
}
------解决方案--------------------
不知道对不对!

哦,又加了条件了!

那就错了!
------解决方案--------------------
int a = 18001;
string a1 = a.ToString().Substring(0,a.ToString().Length-3);
//Response.Write(a1.ToString());
int r = (int.Parse(a1.ToString())+1) * 1000;
Response.Write(r.ToString());  //出来的就是19000了.

但不知道快不快!
------解决方案--------------------
private static int NextThousand(int p)
{
decimal temp = (decimal)p / 1000;
return (int)Math.Ceiling(temp) * 1000;
}
------解决方案--------------------
int a=18001
((double)a/1000)然后不是有个函数可以取不小于这个浮点数的最小整数的吗
然后再乘1000
不知道可以吗
------解决方案--------------------
return Math.Ceiling(i / 1000m) * 1000m;

------解决方案--------------------
______________________________

最快的办法是,判断大小
if (i <= 1000)
{
return 1000;
}
else if (i <= 2000)
{
return 2000;
}
……
______________________________
------解决方案--------------------
工资也按这样算就好了~
------解决方案--------------------
int result = a + 1000 - a % 1000;
------解决方案--------------------
(a + 999) / 1000 * 1000