异常处理
知识点
try—catch
C#语言的异常处理功能提供了处理程序运行时出现的任何意外或异常情况的方法。异常处理使用try、catch和finally关键字来尝试可能未成功操作、处理失败以及在事后清理资源等。
一、 异常的出现
用户输入一个数字,并将字符型数字转化成数值型数字。
int number = 0;
Console.WriteLine("请输入一个数字");
number = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("您输入的数字是{0}", number);
Console.ReadKey();
如果用户输入的字符,比如abc,那么程序就会报错,无法执行下去。
二、 try-catch
在C#语言中可以使用try-catch语句去捕获和处理有可能发生的异常。
(一) 语法
try
{
try语句块
}
catch(异常声明1)
{
出现异常后要执行的代码;
}
catch(异常声明2)
{
出现异常后要执行的代码;
}
(1) . try语句块:包含有可能会引发异常的语句块
(2) . 异常声明:有可能会引发的异常类型,比如FormatException.
(3) . catch语句块:指定的异常引发后,对异常进行相应的处理
(二) 执行过程
当try中的代码出现异常的时候,出现异常的这行代码后面的代码不会被执行。而是直接跳到catch中执行catch的代码。
(三) 使用规律:
哪行代码有可能出现异常,就踹他一脚。
三、 解决异常
int number=0;
Console.WriteLine("请输入一个数字");
try
{
number = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("您输入的数字是{0}", number);
}
catch(FormatException)
{
Console.WriteLine("输入的字符串不能转换成数字,程序退出!!!");
b = false;
}
四、 练习
某人新开一个账户,输入开始存入的金额(本金)、年利率以及存款周期(年)。假定所有的利息收入都重新存入新户,请编写程序,计算并输出在存款周期中每年年终的账面金额。计算公式如下
a=p(1+r)n
p:本金,r:年利率,n:年数,a是在第n年年终的账面金额。