您的位置:首页 > 编程语言 > C#

C#编程基础 实验(7) (1-2)

2016-04-21 18:00 399 查看
1.将百分制转换成五分制,如果输入的百分制成绩超出0~100时,程序抛出异常。

代码如下:

using System;
using System.Collections;
using System.Collections.Generic;
namespace Program
{
class OverflowRange : ApplicationException
{
public OverflowRange(string msg):base(msg)
{ }
}
class Program
{

static void Main(string[] args)
{
try
{
Console.Write("输入一个百分数:");
int num = Convert.ToInt32(Console.ReadLine());
if (num < 0 || num > 100)
{
throw new OverflowRange("数值不在0~100之间");
}
double result = (double)num * 5.0 / 100;
Console.WriteLine("转换成五分制为:{0}", result);
}
catch (FormatException)
{
Console.WriteLine("必须输入数字");
}
catch (Exception e)
{
Console.WriteLine(e.Message);
}
finally
{
Console.ReadKey();
}
}
}

}

2.编写一个计算阶乘的程序,当输入的数据是带小数时,引发异常。

using System;
using System.Collections;
using System.Collections.Generic;
namespace Program
{
class WithoutDecimal : ApplicationException
{
public WithoutDecimal(string msg):base(msg)
{ }
}
class Program
{

static void Main(string[] args)
{
try
{
Console.Write("输入一个数:");
double num = Convert.ToDouble(Console.ReadLine());
if (num - (int)num != 0)
{
throw new WithoutDecimal("输入的数据带小数");
}
int sum = 1;
for (int i = 2; i <= (int)num; i++)
{
sum *= i;
}
Console.WriteLine("{0}的阶乘为{1}", num, sum);
}
catch (FormatException)
{
Console.WriteLine("必须输入数字");
}
catch (Exception e)
{
Console.WriteLine(e.Message);
}
finally
{
Console.ReadKey();
}
}
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c#