-1

我正在用 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();
}
4

2 回答 2

4

您需要提供FormatProvidertoToString()方法。在您的情况下P需要用于百分比 -

score = (double)score/(double)totalPossible;
literalScore.Text = score.ToString("P");

这里的链接-

百分比 ("P") 格式说明符将数字乘以 100 并将其转换为表示百分比的字符串。

于 2013-04-13T19:01:34.863 回答
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

于 2013-04-13T19:52:57.600 回答