我不能把它分成小数。它的四舍五入值为0.
private void button24_Click(object sender, EventArgs e)
{
double x = 0;
x = 1 / 2;
ans.Text = x.ToString();
}
当我调试时,x在发送到文本框'ans。'之前为零。
我试过......字符串变量仍为零..
double x = 1/5;
string displayX = x.ToString("0.0000");
答案 0 :(得分:7)
它是integer division,这些是预期的输出。
double x = 1.0 / 5; // this will not perform integer division
double x = 1/5; // this does (1/5 = 0).
double x = 1D / 5; // this will not because 1 is treated as a double
答案 1 :(得分:2)
您可以执行以下操作之一:
double x = 1;
double y = 1.5;
double ans = x / y;
答案 2 :(得分:1)
用双x = 1.0 / 5替换双x = 1/5,应该修复它。因为你要分割的两个数字都是整数,所以它仍然将它作为整数处理,而不是作为一个整数。当你在逻辑上思考时,它有一定意义 - 它以这些数字的任何形式进行除法,然后将其保存到变量中;变量类型对实际方程无关紧要。
(我知道还有其他答案,但希望这可以帮助您了解问题存在的原因。)