C#求百分比

double a=50;

double b=100;

没有小数部分
Label1.Text = (a   /   (a+b)).ToString("0%")   
两位小数
Label2.Text =   (a   /   (a+b)).ToString("P")   

ToString("0.00%"); ToString("P3"); 可以设置精度

方法一:能得到你想要的小数点后位数
double percent=Convert.ToDouble(2)/Convert.ToDouble(34);
string result=string.Format("{0:0.00%}",percent);//得到5.88%

string result=string.Format("{0:0.0000%}",percent);//得到5.8824%

 方法二:比较理想,能得到你想要的小数点后位数
double percent=Convert.ToDouble(2)/Convert.ToDouble(34);
string result=percent.ToString("0%");//得到6%

string result=percent.ToString("0.000%");//得到5.882%

 方法三:ToString("p")中的参数p默认保留小数点后两位数,这个也能得到你理想的数字

double percent=Convert.ToDouble(2)/Convert.ToDouble(34);
string result=percent.ToString("p");//可以到的5.88%
string result =percent.ToString("p2");//得到5.88%

string result=percent.ToString("p3");//得到5.882%

 方法四:Math.Round(num1,num2) ,参数一(num1)是用于四舍五入的数,参数二(num2)是表示保留小数点后数字的位数
double percent=Math.Round(2*1.00/34*100.0,4);
string result=percent.ToString()+"%";//得到5.8824%

原文地址:https://www.cnblogs.com/weimingxin/p/8954130.html