0

私はこれが正しく機能するようになるのに本当に近づいていますが、何かが足りないだけです。それはおそらく非常に単純です。私はC#が初めてです。txtStateこの都市を訪れたかどうかを確認するために、都市を入力する場所というテキストボックスがあります(私は知っています)。txtAnswerボタンをクリックすると、別のテキストボックスに応答が出力されbtnVisitedます。今のところ、入力したものをすべてtxtStateボックスに入力し、それが配列の 0 の位置であると言っています。この都市が配列内のどの位置にあるかを含め、それをテキストボックスにも出力する必要があることを忘れていました。これが私のコードです:

namespace Test
{
public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
    }

    private void button2_Click(object sender, EventArgs e)
    {
        txtAnswer.Text = "";
        txtState.Text = "";
    }

    private void button3_Click(object sender, EventArgs e)
    {
        this.Close();
    }

    private void btnVisited_Click(object sender, EventArgs e)
    {
        string[] CityName = {"Columbus", "Bloomington", "Indianapolis",
        "Fort Wayne", "Greensburg", "Gary", "Chicago", "Atlanta", "Las Vegas"};
        bool visitedbool;
        int subscript;
        subscript = 0;
        visitedbool = false;
        string QueryCity;
        QueryCity = txtState.Text.ToUpper();
        do 
        {
            subscript += 0;
            if (subscript == 0)
                txtAnswer.Text = "You have visited" + " " + QueryCity + " " + "It is the" + " " + subscript + " " + "city you have visited.";

            else if (subscript == 1)
                txtAnswer.Text = "You have visited" + " " + QueryCity + " " + "It is the" + " " + subscript + " " + "st city you have visited.";

            else if (subscript == 2)
                txtAnswer.Text = "You have visited" + " " + QueryCity + " " + "It is the" + " " + subscript + " " + "nd city you have visited.";

            else if (subscript == 3)
                txtAnswer.Text = "You have visited" + " " + QueryCity + " " + "It is the" + " " + subscript + " " + "rd city you have visited.";

            else if (subscript == 4 - 8)
                txtAnswer.Text = "You have visited" + " " + QueryCity + " " + "It is the" + " " + subscript + " " + "th city you have visited.";

            else
                txtAnswer.Text = "You have not visited this city.";
        }
        while (visitedbool == true);       
    }
}
}
4

1 に答える 1

1

コードの最初の問題:

これはうまくいきません:else if (subscript == 4 - 8)

代わりにこれを試してください:else if (subscript >= 4 && subscript <= 8)

2番:

subscript += 0;と同じですsubscript = subscript + 0;

下付き文字をある種のカウンターとして使用している場合、追加しているだけなので機能しません0

三番:

visitedbool常になりますfalsevisitedboolに設定したことがないため、ループは一度だけ実行されますtrue

于 2012-11-24T17:18:22.133 に答える