关于c#抛出异常

2025-03-04 22:03:53
推荐回答(6个)
回答1:

int j; //定义一个整型变量j
Console.WriteLine("Enter j:");
string line = Console.ReadLine();
j = Convert.ToInt32(line); //获取输入的数值,赋给j
int i; // 定义整型变量i

int sum = 0; 定义整型变量sun,初始值为0
try
{
for (i = 5; i < j; i++) //将5赋给i,你输入的数为4,判断5<4?否,跳出循环
{
sum += i;
Console.WriteLine(sum);

}
}
catch (Exception e)
{
Console.WriteLine("j必须大于5!!", e);
}

这个不会发生异常啊,异常的常见例子有内存分配不足、数组下标越界、运算溢出或除数为零。
或者你可以自定义异常,当j<5时就抛出异常
建议先了解什么是异常。OVER~

回答2:

如果你想自定义异常的话可以这样写
if(j<=5)
{
throw new Excception("j必须大于5!")
}

回答3:

呵呵,因为没有异常。j大于5 程序照样运行,如果要有异常的话得自己定义像2楼所说
if(j<=5)
{
throw new Excception("j必须大于5!")
}

回答4:

for (i = 5; i < j; i++)
当执行这个循环的时候
j为4,i却一开始就是5,所以就直接跳出循环了。

回答5:

判断不对。肯定了,看你这句话。
for (i = 5; i < j; i++)

i < j 的。
应该是:i<= j;

回答6:

不是catch,是在try中的运行的程序在运行过程中如果碰到异常,则跳转到catch,执行catch里面的语气。如果你要捕获BigException就这样写
try

//code

catch(BigException
e)//好像没有BigException这个异常,就当个例子吧
{messageBox.Show("程序严重错误并将退出程序");
}
catch(Exception
ex)
{
messageBox.Show("出现上述异常之外的异常");//安全起见,还要捕获其他未知的异常
}