我正在尝试弄清楚如何将文本框中显示的数字转换为百分比。
我的程序基本上是计算2016和2017年售出的汽车的百分比变化。
为了测试它,我做了2016年的汽车销量=7辆,2017年的汽车销量= 12辆,我得到了一个非常长的数字。我知道你用(“p”)或(“p”)来格式化数字,但我就是不知道把它放在哪里?
private void calcbtn_Click(object sender, EventArgs e)
{
double carsIn2016; // number of cars sold in 2016
double carsIn2017; // number of cars sold in 2017
double Percentchanged; // calculate the % change
carsIn2016 = double.Parse(soldIn2016txtbox.Text); //get input from text box
carsIn2017 = double.Parse(soldIn2017txtbox.Text); // get input from text box
Percentchanged =(carsIn2017 - carsIn2016) / (carsIn2016 * 100); // calculate the % change
MessageBox.Show( "Your total % change is " + Percentchanged);
}发布于 2018-01-30 23:48:34
Precentage Difference:计算出正在比较的两个数字之间的差异(增量)。然后:将增量除以原始数字,并将答案乘以100
因为您是在打印之前计算百分比。如果你使用格式化程序,那么你会得到不好的结果。您只需为字符串格式化程序输入一个数字,即可将其转换为百分数。不要乘以100并使用格式化程序。
你实际上在PrecentChanged变量中有百分号。
double carsIn2016; // number of cars sold in 2016
double carsIn2017; // number of cars sold in 2017
double Percentchanged; // calculate the % change
carsIn2016 = double.Parse("7"); //get input from text box
carsIn2017 = double.Parse("12"); // get input from text box
Percentchanged =((carsIn2017 - carsIn2016) / (carsIn2016));//* 100); // calculate the % change
var output = String.Format("Your total % change is : {0:P}.", Percentchanged);输出 71.43%
如果乘以100,然后使用格式化程序
输出值:7142.86%.
发布于 2018-01-30 23:40:43
您正在寻找的是ToString(),它可以与您指定的"P“一起使用。
MessageBox.Show("Your total % change is " + PercentChanged.ToString("P"));您还可以按照Microsoft's Website中的说明,通过ToString进行各种其他格式设置
https://stackoverflow.com/questions/48525012
复制相似问题