我想在输入的C#+3中总结不同的数字 例如:
N号码写在控制台
中a1: 3
a2: 5
a3: 6
a4:-3
a5: 5
我想要总结A1 + A4 + A7
(如果有A7
)等等。
我是C#的新手,当你不知道会写多少数字时,我找不到如何保存数字的解决方案。
答案 0 :(得分:1)
您可以使用动态集合List<int>
并使用for
循环迭代:
List<int> list = new List<int>();
list.Add(3);
list.Add(5);
list.Add(6);
list.Add(-3);
list.Add(5);
int sum = 0;
for (int i = 0; i < list.Count; i++)
{
if(i % 3 == 0) // sum every third number
{
sum += list[i];
}
}
答案 1 :(得分:0)
对于存储未知数量的元素,您应该使用集合,例如列表。
现在,根据您在控制台中输入数字的方式,您可以通过两种方式将它们添加到列表中,或者在每行中输入一个数字,或者只输入一行中的所有数字,第二种情况的代码:
List<int> list = new List<int>();
string[] strings = Console.ReadLine().Split();
foreach (var number in strings)
{
list.Add(int.Parse(number));
}
然后你需要以你想要的方式在列表中添加元素。
答案 2 :(得分:0)
如果您逐行阅读数字,可以避免将它们全部存入List
:
var lineNumber = 0;
var sum = 0;
while (true)
{
var line = Console.ReadLine();
if (string.IsNullOrEmpty(line))
break;
if (lineNumber++ % 3 == 0)
sum += int.Parse(line);
}
Console.WriteLine(sum);
此代码汇总每个第三行,直到用户输入空行