j_0057.gif 跟以前接触的C++一样,C#中的控制结构也有三种,即顺序结构,分支结构和循环结构。刚刚学完,来这儿整理一下思路,加深一下印象哈。

     ★ 顺序结构:按照先后次序依次执行的结构,这种结构非常简单,就跟下楼梯一样一直往下走,直到程序执行结束。在这里也没什么多说的了。

      分支结构:根据条件进行选择来执行不同的语句块。C#中分支结构主要有三种,即(1)if语句(2)switch...case语句(3)try...catch语句【常用来捕获程序中的异常语句】。格式如下:

     try

      {

       //可能出错的代码

        语句1;  

        语句2;    

        语句3;    

       }

     catch

       {

         语句块

        }

注意:如果try中的代码没有出现异常,则不会执行catch中的代码;如果try中出现了异常的代码,那么try中出错代码以后的代码不在执行,直接跳到catch中执行语句块。灵活运用try...catch语句会让程序简单化。

      循环结构:可以重复执行某些语句块。在C#中这个结构也有三种,即

(1)for循环。循环类型:次数确定;次数不确定但由程序控制;次数不确定但由   用户控制;死循环。

(2)while循环。特点:先判断再执行也就是最少执行零次循环体。

(3)do...while循环。特点:先执行再判断。也就是最少执行一次循环体。

下面附上一道例题:不断要求用户输出一个数字(假定用户输入的都是正整数),当用户输入end的时候得到刚才输入的数字中最大的一个数。

C#程序如下:

           string input=" ";//给input赋值

           int max=0;

           int number=0;

           bool flag = true;

           do

           {

               try

               {

                   Console.WriteLine("请输入一个整数");

                   input = Console.ReadLine();

                   max = Convert.ToInt32(input);//最可能出错的代码。如果转换成功则程序继续往下执行,如果不成功,则程序进入catch中

                   if (number>max)

                   {

                       max = number;

                   }

               }

               catch

               {

                   if (input!="end")//输入的字符既不是数字也不是end

                   {

                       Console.WriteLine("您输入了非法数字!");

                       input="end";//继续往下执行,则while中循环条件不成立,那么结束循环

                       flag = false;//将flag变为false继续执行

                   }

               }

           }while (input!="end");//如果input==end,即循环条件不成立,跳出循环,执行后面的if语句

           if (flag == false)

           {

               Console.WriteLine("结束程序!");

           }

           else

           {

               Console.WriteLine("最大值为{0}", max);

           }

           Console.ReadKey();


      j_0067.gif 每天都给自己加油!努力的成长!j_0067.gif