06黑马程序员_while循环,调试

来源:互联网 发布:网络皮条客会判多久 编辑:程序博客网 时间:2024/05/19 19:29

------- Windows Phone 7手机开发.Net培训、期待与您交流! -------



while循环

语法:

while(条件)    //条件加:循环条件

{

要执行循环的n条程序;    //循环条件

}

执行过程:

1.判断循环条件,如果条件为true,则转向2;如果条件为false,则转向3

2.执行循环体,循环体执行完成后,转向1

3.跳出循环,循环结束


练习

输入班级人数与分数,得到总成绩与平均成绩

            Console.WriteLine("请输入你们班有多少人数");            int count = Convert.ToInt32(Console.ReadLine());//得到班级人数            int score = 0;//存用户输入的分数            int i = 0;            int sum = 0;//用于存总成绩            while (i < count)            {                Console.WriteLine("请输入第{0}个学生的成绩", i + 1);                score = Convert.ToInt32(Console.ReadLine());                // sum = sum + score;                sum += score;                i++;            }            Console.WriteLine("本班共有{0}人,总成绩为{1}分,平均成绩{2}分",            count, sum, sum / count);

do-while循环

语法:

do
{循环体;}
while(条件);

执行过程:
1执行循环体,执行完循环体转向2
2判断条件是否成立,如果条件为true,则转向1.如果条件为false,则转向3
3跳出循环

假如循环条件一开始就不成立,对于while循环,一次都不会执行.对于do-while循环会执行一次.

所有do-while的循环体一般至少会被执行一次.


比较

while先判断,后执行

do-while 先执行,后判断


检测异常:

try    //检测

{

有可能出现异常的代码

}

catch

{

}

如果try中的代码没有出现异常,则不会执行catch中的代码.

如果try中的代码出现异常,则程序立即调到catch中.


例题

//5、 从一个整数数组中取出最大的整数。{    class Program    {        static void Main(string[] args)        {            Console.WriteLine("输出一组整数,输入\"ok\"将从中选出一个最大值");            int max = int.MinValue;            string input = "";            int number = int.MinValue;                        do            {                try                {                    Console.WriteLine("请输入一个数字");                    input = Console.ReadLine();                    number = Convert.ToInt32(input);                    if (number > max)                    {                        max = number;                    }                }                catch                {                    if (input != "ok")                    {                        Console.WriteLine("输入非法数据,程序结束!!");                        input = "ok";                    }                }            } while (input != "ok");                        Console.WriteLine("最大值为{0}", max);            Console.WriteLine("谢谢合作,程序结束");            Console.ReadKey();        }    }}

 //3、 不断要求用户输入一个数字,然后打印这个数字的二倍,当用户输入q的时候程序退出。{    class Program    {            static void Main(string[] args)        {        //假如用户只能输入数字和q,其他不考虑            #region            //int input;            //bool flag = true;            //do            //{            //    try            //    {            //        Console.WriteLine("请输入一个数字?");            //        input = Convert.ToInt32(Console.ReadLine());            //        Console.WriteLine("{0}的二倍是{1}",input,input*2);            //        flag = true;            //    }            //    catch            //    {            //        flag = false;            //    }            //} while (flag);            #endregion            string input;//定义input            int number;            Console.WriteLine("请输入一个数字,我会显示它的二倍(q结束)?");            input = Console.ReadLine();//输入input            while (input != "q")//q会继续            {                number = Convert.ToInt32(input);//强制转换为1nt                Console.WriteLine("{0}的二倍是{1}", number, number * 2);                Console.WriteLine();                Console.WriteLine("请输入一个数字(q结束)?");                input = Console.ReadLine();            }//数字会*2            Console.WriteLine("程序结束");            Console.ReadKey();        }    }}

程序调试

     设置断点

         单步运行

             观察变量

当程序出现问题后找错误的一个过程,对程序员来说非常重要

出错一般分为两大类:

1语法错误.

2逻辑错误(运行时错误)

------- Windows Phone 7手机开发.Net培训、期待与您交流! -------