C# 动态大小的阵列
我一直在尝试制定一个销售计划,向客户询问他将购买的商品数量。例如,如果他输入C# 动态大小的阵列,c#,arrays,console-application,C#,Arrays,Console Application,我一直在尝试制定一个销售计划,向客户询问他将购买的商品数量。例如,如果他输入“5”,下一个窗口将询问他5个问题。我的问题是,我需要使用数组,所以有什么方法可以更改吗 string[] arrmerch = new string[6]; 新字符串中的数字是“6”,用户输入了什么?这是循环。项目选择是个问题 for (int i = 0; i <= arrmerch.Length; i++) { Console.Write("Item choice: "); arrmerch
“5”
,下一个窗口将询问他5个问题。我的问题是,我需要使用数组,所以有什么方法可以更改吗
string[] arrmerch = new string[6];
新字符串中的数字是“6”,用户输入了什么?这是循环。项目选择是个问题
for (int i = 0; i <= arrmerch.Length; i++)
{
Console.Write("Item choice: ");
arrmerch[i] = Console.ReadLine();
对于(int i=0;i当然,只需执行以下操作:
int userInput = Convert.ToInt32(Console.ReadLine());
string[] arrmerch = new string[userInput];
您需要添加输入检查,以确保您拥有的是一个整数,而不是其他内容
下面是一个输入检查示例:
int arraySize = 0;
if(Int32.TryParse(Console.ReadLine(), out arraySize))
{
string[] arrmerch = new string[arraySize];
//the rest of your code
//...
//.
}
else
{
//The user entered a value which cannot be parsed to an int
}
改变
字符串[]arrmerch=新字符串[6]
到
它将接受用户的输入并创建该大小的数组。如何:
int numberOfQuestions = Convert.ToInt32(Console.Readline());
string[] arrmerch = new string[numberOfQuestions];
for (int i = 0; i <= arrmerch.Length; i++)
{
Console.Write("Item choice: ");
arrmerch[i] = Console.ReadLine();
int numberOfQuestions=Convert.ToInt32(Console.Readline());
string[]arrmerch=新字符串[numberOfQuestions];
对于(int i=0;i您也可以使用通用列表
。如果您将来想更改数组长度,它们更灵活
int count = Convert.ToInt32(Console.ReadLine());
var list = new List<string>();
for (int i = 0; i <= count; i++)
{
Console.Write("Item choice: ");
list.Add(Console.ReadLine());
}
int count=Convert.ToInt32(Console.ReadLine());
var list=新列表();
对于(int i=0;我用一个变量替换6
,该变量包含您向用户请求的数字…?如果您仍然需要将该输入转换为数字,请查看int.TryParse
。使用数组有什么具体原因吗?如果使用列表,您可以更快地完成相同的任务。@abhi因为数组是这方面的要求项目。不客气。如果这有帮助,你应该。
int count = Convert.ToInt32(Console.ReadLine());
var list = new List<string>();
for (int i = 0; i <= count; i++)
{
Console.Write("Item choice: ");
list.Add(Console.ReadLine());
}