刚入门的C#.NETer们共同学习努力进步,大牛不要嫌弃欢迎评论指导
输入半径并计算圆面积(可计算多组数据,其中非数字数据或负数结束程序)
直接上代码:
using System.Text.RegularExpressions;//引入命名空间正则表达式
class Circle
{
static void Main(string[] args)
{
Regex reg = new Regex("^[0-9].*$");//创建正则表达式对象,筛选出正数、0及小数
while (true)//用来计算多组数据
{
double area, radius;//area为圆面积,radius为圆半径
Console.Write("输入半径(输入负数及非数字字符退出程序):");
string r = Console.ReadLine();//用户输入要计算的数据
//判断是否为正数或正小数及0,不是则退出循环
if(!reg.IsMatch(r.ToString())||Convert.ToDouble(r)<0)
{
Console.WriteLine("程序结束!按任意键退出……");
break;//退出循环
}
radius = Convert.ToDouble(r);//将用户输入数据字符串转为double型
area = radius * radius * Math.PI;//计算圆面积
Console.WriteLine("面积为:"+area);//输出计算结果
}
Console.ReadKey();
}
}
分享新手的要点:
1.注意区别:Console.ReadLine() 【【读入一行字符串】】
Console.ReadKey() 【【读键盘任一按键】】
Console.Read() 【【读入一个字符,返回int类型的ASCII码值】】
2.注意短路运算符“ || ”的使用,若1表达式为真则不用判断2表达式。【如代码中输入字符已经不是数字即不用进行之后的类型转换】】
3.判断输入数据类型可参考正则表达式,较为标准!
谢谢观看!