C#基础篇第四天

本文详细介绍了C#中的异常捕获机制,强调了try-catch语句在处理异常时的重要性。同时,讲解了switch...case的执行流程,强调了break关键字在结构中的作用。此外,还阐述了while循环的工作原理,包括如何避免死循环,并展示了break在退出循环中的应用。
摘要由CSDN通过智能技术生成

异常捕获

我们在程序中经常会出现各种各样的异常,你如果想要你的程序变得坚强一些,在你的代码中应该经常性的使用try–catch语句进行异常捕获
哪行代码有可能出现异常,就try起来。
语法:
Try
{
可能会出现异常的代码
}
Catch
{
出现异常后要执行的代码
}
执行过程:如果try中的代码没有出现异常,那么catch中的代码不会执行
如果try中的代码出现了异常,哪怕这行代码后面还有一百行代码都不会执行了,直接跳到catch中执行代码。
示例:

            //输入一个数字,然后输出这个数字的二倍try--catch语句
            //注意:try和catch之间不能有其他的代码
            Console.WriteLine("请输入一个数字:");
            try
            {
                int number = Convert.ToInt32(Console.ReadLine());
                Console.WriteLine(number * 2);
            }
            catch     //输入为非数字时运行catch
            {
                Console.WriteLine("您输入的内容有误。");
            }
            Console.ReadKey();

Switch…case

执行过程:程序运行到switch处,首先将括号中变量或者表达式的值计算出来,然后拿着这个值依次跟每个case后面的值进行匹配,一旦匹配成功,则运行该case所带的代码,执行完成后,遇到break,跳出switch–case结构,如果跟每个case所带的值都不匹配,就看当前这个switch–case结构中是否存在default,如果有default,则执行default中的语句,如果没有default,则该switch–case结构什么都不做。

while循环

执行过程:程序运行到while处,首先判断while所带的小括号内的循环条件是否成立,如果成立的话,也就是返回一个true,则执行循环体,执行完一遍循环体后,再次回到循环条件的判断,如果依然成立,则继续执行循环,如果不成立,则跳出while循环,如果没有那么一行代码能够改变循环条件,也就是循环条件永远都成立,则为死循环。

break

作用:
跳出switch–case结构
跳出当前while循环
一般不单独的使用,而是跟着if判断一起使用,当满足某些条件的了。时候就不再循环

示例

 //输入年份和月份,输出对应的天数。
            Console.WriteLine("请输入年份:");
            try
            {
                int year = Convert.ToInt32(Console.ReadLine());
                Console.WriteLine("请输入月份:");
                try
                {
                    int month = Convert.ToInt32(Console.ReadLine());
                    switch (month)
                    {
                        case 1:
                        case 3:
                        case 5:
                        case 7:
                        case 8:
                        case 10:
                        case 12:
                            Console.WriteLine("{0}年{1}月是31天。",year, month);
                            break;
                        case 4:
                        case 6:
                        case 9:
                        case 11:
                            Console.WriteLine("{0}年{1}月是30天。", year, month);
                            break;
                        case 2:
                            if ((year % 4 == 0 && year % 100 != 0) || (year % 4 == 0 && year % 400 == 0))
                                Console.WriteLine("{0}年{1}月是29天。", year, month);
                            else
                                Console.WriteLine("{0}年{1}月是28天。",year, month);
                            break;
                        default:
                            Console.WriteLine("您输入的月份有错。");
                            break;
                    }
                }//月份的try
                catch
                {
                    Console.WriteLine("您输入的月份有错");
                }
            }   //年份的try
            catch
            {
                Console.WriteLine("您输入的年份有误");
            }
                Console.ReadKey();
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值