我正在使用C#构建一个测验,并将结果显示为字符串,但我希望结果显示为% - 我该怎么做?
protected void Button1_Click(object sender, EventArgs e)
{
int score = 0;
if (qn1.SelectedValue == "Yes")
score++;
if (qn2.SelectedValue == "Yes")
score++;
if (qn3.SelectedValue == "Yes")
score++;
if (qn4.SelectedValue == "Yes")
score++;
if (qn5.SelectedValue == "Yes")
score++;
literalScore.Text = score.ToString();
}
答案 0 :(得分:4)
您需要提供FormatProvider
到ToString()
方法。在您的情况下,P
需要用于百分比 -
score = (double)score/(double)totalPossible;
literalScore.Text = score.ToString("P");
从链接here -
百分比(“P”)格式说明符将数字乘以100和 将其转换为表示百分比的字符串。
答案 1 :(得分:2)
我不确定我清楚地理解你问的是什么......但我从你的问题中理解的是,如果有人回答3个问题,那么他的百分比应该是60%,这应该写在结果中。
protected void Button1_Click(object sender, EventArgs e)
{
int score = 0;
if (qn1.SelectedValue == "Yes")
score++;
if (qn2.SelectedValue == "Yes")
score++;
if (qn3.SelectedValue == "Yes")
score++;
if (qn4.SelectedValue == "Yes")
score++;
if (qn5.SelectedValue == "Yes")
score++;
literalScore.Text = (score*20).ToString() + " % ";
}
如果问题是5,你必须乘以20,如果问题是10,你必须乘以10,而不是你必须乘以10