2013-10-04 71 views
0

我想在等同于我的控制台24/5和显示的公式,并回答屏幕上的(答案= 4.8),我写我的代码为:如何显示在C#中的小数点答案

int answer = 24/5; //declare answer 
Console.WriteLine("24/5 = " + answer); 
Console.ReadLine(); 

我曾尝试使用变量decimal,double,float和int作为答案,但控制台将始终写入答案“4”而不是“4.8”。

任何人都可以帮忙吗?

回答

2
int answer = 24/5; 

以上所有内容均为int,您如何获得小数点?即使将answer的类型更改为double,也不能解决问题,因为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翻番。

1

当你写24/5,在这种情况下,运营商/对于整型(因为双方都整型的),这样结果是int太定义操作。试试这个:

double answer = 24/5.0; 
Console.WriteLine("24/5 = " + answer); 

当你提供一个double类型一个操作数,在这种情况下,运营商/的双重形式将被使用,其结果将是一个双过。

+0

工作过!任何想法,为什么这不会工作,当我在数字上使用双变量,但没有5.0(只是5)? – Pixie

+0

@Pixie。 5.0不是一个整数,所以结果是一个double。 5和24都是整数,然后触发整数除法 – Harrison

+0

@Pixie:“我使用双变量” - 很好,不是真的。您将结果存储在一个双变量中,但这太迟而不能影响计算。如果你已经完成了'double x = 24,y = 5;双重答案= x/y;'它会起作用。 –