我是编程的新手,所以请耐心等待,我有一个简单的问题,我想通过,我希望能从中找到它。我想将数字乘以.23,所以我可以得到一个百分比。当我调试它不起作用,我知道它不是一个大问题,但我一直在寻找,我无法弄明白,任何帮助?
float percengage = .23f;
//Cost of Paint
percengage = .23f;
totalCostOfPaint = pricePaintPerGallon * percengage;
Console.WriteLine("Cost of paint:" + totalCostOfPaint);
答案 0 :(得分:4)
您的totalCostOfPaint
变量需要声明为float
,double
或decimal
才能使其正常工作,如同书面说明的那样。
在处理货币价值时,将decimal
用于所有计算是非常常见的,因为它提供了更高的精度。
请注意,您可能还想更改格式(打印为货币):
// Note that pricePaintPerGallon needs to be declared properly, as well...
decimal percengage = 0.23M;
decimal totalCostOfPaint = pricePaintPerGallon * percengage;
Console.WriteLine("Cost of paint: {0:C}", totalCostOfPaint);
答案 1 :(得分:2)
我看到的唯一问题是您没有声明totalCostOfPaint
和pricePaintPerGallon
变量。由于它不起作用,我只能假设你没有在代码中的其他地方声明那些。如果你这样做,它可以正常工作:
float percengage = .23f;
float pricePaintPerGallon = .99f;
float totalCostOfPaint = pricePaintPerGallon * percengage;
Console.WriteLine("Cost of paint:" + totalCostOfPaint);
演示:http://rextester.com/KNIUNQ58221
您知道,在使用它们之前,必须声明C#中的变量(意味着设置和描述)。编译器需要知道percengage
,pricePaintPerGallon
和totalCostOfPaint
是局部变量,并且它们的类型为float
。您已经为percengage
执行此操作,方法是在第一行放置float
字样。