我想在我的控制台中等同于 24/5 并在屏幕上显示等式和答案(答案 = 4.8),我将代码编写为:
int answer = 24 / 5; //declare answer
Console.WriteLine("24 / 5 = " + answer);
Console.ReadLine();
我尝试使用变量 decimal、double、float 和 int 作为答案,但控制台总是会写出答案“4”而不是“4.8”。
有人可以帮忙吗?
int answer = 24 / 5;
上面的一切都是int
,你怎么期望得到一个小数点?即使您将类型更改answer
为double
this 也无法解决问题,因为24 / 5
仍然返回整数值。
要获得一个double
值,至少有一个操作数应该是double
类型。像:
double answer = (double) 24 / 5;
或者
double answer = 24d / 5;
或者
double answer = 24.0 / 5;
或者
double answer = 24 * (1.0) / 5;
或修改/强制5
加倍。
当你写24 / 5
时,在这种情况下,运算符是为int 类型/
定义的运算符(因为两边都是int 类型),所以结果也是。试试这个:int
double answer = 24 / 5.0;
Console.WriteLine("24 / 5 = " + answer);
当您为其中一个操作数提供double 类型时,在这种情况下,将使用运算符的 double 形式,/
结果也将是 double。