菜鸟的C#学习之旅——C#跳转语句

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/whc888666/article/details/83719575

目录

一、break语句

二、continue语句

三、扩展:比较break语句和continue语句之间的异同

四、return语句

五、throw语句

六、goto语句

七、总计



一、break语句

1.break语句:是中断当前循环,或与label一起使用,中断相关联的语句。

2.通常情况在switch语句和while、for、for...in、或do...while循环语句中使用break语句。

3.举例:百分制转换为五分制

代码展示:

            Console.WriteLine("请输入您的成绩:");
            int score = Convert.ToInt32(Console.ReadLine());

            switch (score / 10)
            {
                case 10:
                case 9: Console.WriteLine("A");
                    break;
                case 8: Console.WriteLine("B");
                    break;
                case 7: Console.WriteLine("C");
                    break;
                case 6: Console.WriteLine("D");
                    break;
                case 5:
                case 4:
                case 3:
                case 2:
                case 1:
                case 0: Console.WriteLine("E");
                    break;
                default: Console.WriteLine("Error!");
                    break;
            }
            Console.ReadKey();

二、continue语句

1.continue语句:表示接受本次循环,而不是终止整个循环的执行,是结束本次循环进行下一次循环。

2.即跳出循环体中下面尚未执行的语句,对于while循环,继续求解循环条件。而对于for循环程序流程接着求解for语句头中的第三个部分expression表达式。

3.举例:实现1到100(含)之间的除了能被7整除之外所有整数的和。

代码展示:

            用 while continue实现计算1到100(含)之间的除了能被7整除之外所有整数的和。

            int i = 1;

            int sum = 0;
            while (i <= 100)
            {
                if (i % 7 == 0)
                {
                    i++;
                    continue;
                }

                sum += i;

                i++;
            }
            Console.WriteLine("总和为{0}", sum);

三、扩展:比较break语句和continue语句之间的异同

1.continue语句只结束本次循环,而不终止整个循环的执行。而break语句则是结束整个循环过程,不再判断执行循环的条件是否成立;

2.break可以在if-else中使用直接跳出当前循环;continue语句的作用是跳过循环体中剩余的语句并到循环末尾而强行执行下一次循环;

3. 在多层循环中, 一个break语句只向外跳一层;continue语句只用在for、while、do-while等循环体中, 常与if条件语句一起使用, 用来加速循环。

四、return语句

1.return 表示把程序流程从被调函数转向主调函数并把表达式的值带回主调函数,实现函数值的返回,返回时可附带一个返回值,由return后面的参数指定。

2. return通常是必要的,因为函数调用的时候计算结果通常是通过返回值带出的。 如果函数执行不需要返回计算结果,也经常需要返回一个状态码来表示函数执行的顺利与否(-1和0就是最常用的状态码),主调函数可以通过返回值判断被调函数的执行情况。

3.语法结构:

if(a<3)
{

 //操作1

 //操作2

 //操作3

 //操作4

}
else
{

 //操作5

 //操作6

 //操作7

}

举例:求长方形的面积

代码展示

public class Rectangle
{
double height, width, area;
public Rectangle(double _height, double _width)
{
    this.height = _height;
    this.width = _width;
}

public double GetArea()
{
    area = height * width;
    return area;
}
public void Show()
{
    Console.WriteLine("该长方形面积是{0}", area);
}
}

class Progarm
{
static void Main()
{
    Rectangle r = new Rectangle(10, 12);
    r.GetArea();
    r.Show();
     Console .ReadKey  (); 
}
  

五、throw语句

1.Throw会抛出/传递异常,通过在catch块里使用throw语句.可以改变产生的异常,比如我们可以抛出一个新的异常,throw语句有各种各样的,并且很有必要.

2.举例:

代码展示:

//在try块中获取并使用资源,在catch块中处理异常情况,并在finally块中释放资源
            try
            {
                //有可能出现错误的代码
            }
            catch (Exception)//如果try中的代码出现异常,则进去catch中
            {

                throw;//专门把所有的异常扔出来
            }
            finally
            {
                //最后执行的代码,代码无论是否出现异常都会走这里
            }

六、goto语句

1.goto语句无条件转移控制到一个标签语句;

2.goto语句可以跳到它本身所在块内的任何标签语句,或跳出到任何他被嵌套的块内的标签语句;

3.goto语句不能跳入任何嵌套在该语句本身所在块内的任何块。

注意:使用goto语句不好,因为他会导致若结构化的、难以调试和维护的代码。咱们尽量的不用或少用。

七、总计

我们常用到的跳转语句有break语句、continue语句、throw语句、return语句。在这里总结不是目的,目的在于更好的认识和掌握它,以后在使用过程中可以更加的灵活自如。

猜你喜欢

转载自blog.csdn.net/whc888666/article/details/83719575