看範例學C#-02 switch、for、foreach語法教學

  • 43309
  • 0
  • C#
  • 2011-10-01

看範例學C#-02

今天的範例
在combox1 改變時觸發comboBox1_SelectedIndexChanged動作
使用了switch語法
一個button用兩層for 語法來產生九九乘法表
一個button用foreach 語法來取得 comboBox1內的每項元素的文字

switch語法說明
            switch (comboBox1.Text)//拿什麼東西來做判斷
            {
                case "牛肉麵"://選項為牛肉麵
                    MessageBox.Show("一碗100元");
                    break;//每個case 要以break;結尾
                case "蚵仔煎"://選項為蚵仔煎
                    MessageBox.Show("一份50元");
                    break;//每個case 要以break;結尾
                case "肉圓"://選項為肉圓
                    MessageBox.Show("一份35元");
                    break;//每個case 要以break;結尾
                default://以上都不成立執行預設值
                    MessageBox.Show("您還沒點餐呢");
                    break;
            }
for語法說明
    for(初始值;判斷條件式;遞增值)
    {

    }
foreach語法說明
    foreach(資料型別 物件變數 in 物件集合)
    {

    }

以下為程式碼及註解

       private void Form1_Load(object sender, EventArgs e)
        {
            comboBox1.Items.Clear();//清空comboBox1內元素
            comboBox1.Items.Add("牛肉麵");
            comboBox1.Items.Add("蚵仔煎");
            comboBox1.Items.Add("肉圓");
            comboBox1.Items.Add("");
        }


        //comboBox1內文字改變時觸發
        private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            switch (comboBox1.Text)
            {
                case "牛肉麵":
                    MessageBox.Show("一碗100元");
                    break;
                case "蚵仔煎":
                    MessageBox.Show("一份50元");
                    break;
                case "肉圓":
                    MessageBox.Show("一份35元");
                    break;
                default:
                    MessageBox.Show("您還沒點餐呢");
                    break;
            }

        }
        //for迴圈產生九九乘法表
        private void button1_Click(object sender, EventArgs e)
        {
            label1.Text = "";//label1每次都先清空
            string ninenine = "";
            string subvalue = "";
            for (int i = 1; i <= 9; i++)
            {
                for (int j = 1; j <= 9; j++)
                {
                    int k = i * j;
                    subvalue = i + "*" + j +"="+ k;//i*j=k
                    ninenine += subvalue + " ";//ninenine=ninenine+subvalue+" " 的簡寫
                }
                ninenine += "\r\n";//ninenine=ninenine+"\r\n" 的簡寫 "\r\n" 是換行的意思
             }
            label1.Text += ninenine;
        }
        //用foreach 來取得 comboBox1內的每項元素的文字
        private void button2_Click(object sender, EventArgs e)
        {
            int count = 0;
            string comboBoxText = "";
            foreach (var obj in comboBox1.Items)
            {
                if (obj.ToString() != "")
                {
                    count++;//count變數 遞增1
                    comboBoxText += count + "." + obj.ToString();
                }
            }
            MessageBox.Show(comboBoxText);
        }

 

1

ex02.rar


如有錯誤 歡迎指正