我正在学习编程课。用户选择索引时是否可以输出数组值?虽然不多,但这是到目前为止的代码:
double[] cisTuition = new double[] { 0.00, 1.00, 1.50, 2.00, 2.50 };
Console.WriteLine("Please choose the semester");
答案 0 :(得分:2)
您需要使用数组的索引进行访问
Console.WriteLine(cisTuition[index]);
例如,如果您需要从用户输入的输入值中获取索引,
int input = int.Parse(Console.ReadLine());
Console.WriteLine("value is: " + cisTuition[input]);
答案 1 :(得分:2)
是的,您可以通过它们的索引来获取cisTuition
数组的值:检查下面的代码段
double[] cisTuition = new double[] { 0.00, 1.00, 1.50, 2.00, 2.50 };
Console.WriteLine("Please choose the semester");
int index = int.Parse(Console.ReadLine());
Console.WriteLine("value is: " + cisTuition[index]);
当然,您可以改进该代码段,以验证索引是否在数组的边界内,但这是基本思想。
答案 2 :(得分:1)
是的,您可以在特定索引位置处在内部和数组中获得一个值,如下所示:
double[] cisTuition = new double[] { 0.00, 1.00, 1.50, 2.00, 2.50 };
Console.WriteLine(cisTuition[0]);
输出:
0.00
然后,当您请求输入提供索引时,我将使用Console.ReadLine()
获取用户选择并将其记录到变量(index
)中。
最后,我将变量与cisTuition[index]
一起用作索引。
请参阅下面的完整代码:
double[] cisTuition = new double[] { 0.00, 1.00, 1.50, 2.00, 2.50 };
Console.WriteLine("Enter input:"); // Prompt the question
string index = Console.ReadLine(); // Record the input
Console.WriteLine(cisTuition[index]); // Show the array value of this index
答案 3 :(得分:1)
bool Keeplooping = true; //Boolean to tell whether the loops continues
while (Keeplooping == true) //while the user hasn't chosen a valid index
{
Console.WriteLine("Select an index");
try //if this fails then the input is not an int or too big/small
{
int index = int.Parse(Console.ReadLine()); //receive input
Console.WriteLine(cisTuition[index].ToString()); //output the value
Keeplooping = false; //loop will end after this iteration
}
catch //alerts user that the input is bad and tries again
{
Console.WriteLine("Please select a valid index");
}
}
这应该可以解决问题(我已经确定进行过测试)
答案 4 :(得分:0)
首先,您需要用户输入,得到此信息后,您可以进行适当的检查,例如NaN或它是否在数组索引之外。此后,应该很容易找出数组中的索引,然后再打印它。我没有在C#中进行太多编程,但是我想它看起来可能像:
double [] cisTuition =新的double [] {0.00,1.00,1.50,2.00,2.50}; Console.WriteLine(“请选择学期”);
var UserInput = getUserInput();
if(UserInput == NaN || UserInput> cisTuition.length)
print(cisTuition [UserInput])
我知道这绝对不是正确的语法,但是逻辑应该起作用。 希望能帮助到你。
答案 5 :(得分:0)
我认为这里遗漏的是如何读取一个值,如果可能的话将其转换为int
,然后将其用作对数组索引的引用。
因此,如果是这种情况,您希望将类似于此的内容添加到代码末尾:
string strUserInput = Console.ReadLine();
int? iConverted = null;
int.TryParse(strUserInput, out iConverted);
if ((iConverted != null) && (iConverted <= (cisTuition.Length - 1)) )
{
Console.WriteLine(cisTuition[iConverted]);
}
else
{
Console.WriteLine("Invalid value or index of the array");
}
完整说明:
ReadLine()
提取用户提供的值作为数组的索引
iConverted
实例化(作为null)开始,要允许整数也为null,我们也必须使用?
我们将TryParse
strUserInput
转换为整数,如果成功,则将其转储到iConverted
中(如果失败,则iConverted
仍为空)
最后,我们打印请求的索引数组,或通知用户其索引超出范围或未正确解析。