C# 鱼目混珠
以下是我必须做的:C# 鱼目混珠,c#,arrays,input,numbers,double,C#,Arrays,Input,Numbers,Double,以下是我必须做的: 创建一个数组 用户输入10个双元素 使用catch确保它是有效的数据 然后显示数据 以下是迄今为止的代码: static void Main(string[] args) { double[] numbers; numbers = new double[10]; for (int count = 0; count < 10; count += 1) { double num; Console.Writ
static void Main(string[] args)
{
double[] numbers;
numbers = new double[10];
for (int count = 0; count < 10; count += 1)
{
double num;
Console.WriteLine("Enter a number");
num = Convert.ToDouble(Console.ReadLine());
}
Console.WriteLine("{0}", numbers);
Console.ReadLine();
}
static void Main(字符串[]args)
{
双[]数字;
数字=新的双精度[10];
对于(整数计数=0;计数<10;计数+=1)
{
双数;
Console.WriteLine(“输入一个数字”);
num=Convert.ToDouble(Console.ReadLine());
}
Console.WriteLine(“{0}”,数字);
Console.ReadLine();
}
静态void Main(字符串[]args)
{
double[]数字=新的double[10];
对于(整数计数=0;计数<10;计数+=1)
{
双数;
Console.WriteLine(“输入一个数字”);
而(!double.TryParse(Console.ReadLine(),out num))
{
Console.WriteLine(“不是有效数字”);
Console.WriteLine(“输入一个数字”);
}
数字[计数]=num;
}
foreach(数字为双项目)
{
Console.WriteLine(“{0}”,项);
}
Console.ReadLine();
}
静态void Main(字符串[]args)
{
double[]数字=新的double[10];
int i=0;
而(i<10)
{
双数;
Console.WriteLine(“输入一个数字”);
字符串输入=Console.ReadLine();
尝试
{
num=double.Parse(输入);
数字[i]=num;
我++
}
接住
{
Console.WriteLine(“无效号码”);
}
}
foreach(数字为双d)
控制台写入线(d);
Console.ReadLine();
}
静态void Main(字符串[]args)
{
double[]数字=新的double[10];
int计数器=0;
做
{
Console.WriteLine(“输入有效号码或按X退出”);
var t=Console.ReadLine();
尝试
{
双温=双解析(t);
数字[计数器]=温度;
计数器++;
}
捕获(例外)
{
如果(t.包含(“X”))
{
打破
}
//Console.WriteLine(“输入有效号码或按X退出”);
}
}while(counteradd atry/cath
aboutConvert.ToDouble
…或者更好的是…Double.TryParse
当用户输入的不是数字的东西时会发生什么?我已经编辑了你的标题。请参见“”,其中的共识是“不,他们不应该”。为了避免使用Try Catch
会产生的开销,您可以实际使用正则表达式。将与@“\d+”
匹配,以确保输入了数值。如果您希望允许小数,您可以格式化表达式来处理它。“使用Catch确保它是有效数据”+1,但将中的消息更改为告诉出现错误的消息error@PhaDaPhunk我使用的是double.tryparsee,这与使用try/catch不同。从问题的措辞来看,我猜这是家庭作业,所以catch要求可能很重要。@JasonWatkins正是我想说的,这很有效,tha谢谢你。
static void Main(string[] args)
{
double[] numbers = new double[10];
for (int count = 0; count < 10; count += 1)
{
double num;
Console.WriteLine("Enter a number");
while(!double.TryParse(Console.ReadLine(),out num))
{
Console.WriteLine("Not a valid number");
Console.WriteLine("Enter a number");
}
numbers[count] = num;
}
foreach(double item in numbers)
{
Console.WriteLine("{0}", item);
}
Console.ReadLine();
}
static void Main(string[] args)
{
double[] numbers = new double[10];
int i = 0;
while (i < 10)
{
double num;
Console.WriteLine("Enter a number");
string input = Console.ReadLine();
try
{
num = double.Parse(input);
numbers[i] = num;
i++
}
catch
{
Console.WriteLine("Invalid Number");
}
}
foreach (double d in numbers)
Console.WriteLine(d);
Console.ReadLine();
}
static void Main(string[] args)
{
double[] numbers = new double[10];
int counter = 0;
do
{
Console.WriteLine("Enter valid number or press X to exit");
var t = Console.ReadLine();
try
{
double temp = double.Parse(t);
numbers[counter] = temp;
counter++;
}
catch (Exception)
{
if (t.Contains("X"))
{
break;
}
//Console.WriteLine("Enter valid number or press X to exit");
}
} while (counter<10);
foreach (var number in numbers)
{
Console.Write("\nEntered number: "+number);
}
Console.ReadLine();
}