http://i.stack.imgur.com/COOqs.png
总销售额
使用名为Sales.txt的附件。
创建一个应用程序将文件的内容读入double或decimal数组 在ListBox控件中显示数组的内容, 计算阵列值,平均销售额,最大销售额,最小销售额的总和 显示总销售额,平均销售额,最高销售额和最小销售额 表格应类似于以下内容:
如何通过输入相应的代码让数据显示图像的总/平均/高/低销售部分? 我想自己这样做,所以如果你能提供一个可能与我正在做的事情有关的例子,那将是非常有帮助的。 这是我到目前为止输入的内容:
namespace Total_Sales
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void displayButton_Click(object sender, EventArgs e)
{
//declaring array
const int SIZE = 100;
decimal[] sales = new decimal[SIZE];
//varible to hold amount stored in array
int count = 0;
decimal additionHolder = 0;
//declaring streamreader
StreamReader inputFile;
//opening the sales file
inputFile = File.OpenText("../../Sales.txt");
try
{
//pull contents from file into array while there is still items
//to pull and the array isnt full
while (!inputFile.EndOfStream && count < sales.Length)
{
sales[count] = decimal.Parse(inputFile.ReadLine());
count++;
}
//close the file
inputFile.Close();
//display contents in listbox
for (int index = 0; index < count; index++)
{
ListBox.Items.Add(sales[index]);
}
//add all the values
for (int index = 0; index < sales.Length; index++)
{
additionHolder += sales[index];
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
private void button1_Click(object sender, EventArgs e)
{
this.Close();
}
}
}
答案 0 :(得分:1)
您可以使用
从文件中获取所有行 var lines = System.IO.File.ReadAllLines("../../Sales.txt");
您可以使用Linq Select将字符串数组投影并解析为小数组数组
decimal[] sales = lines.Select(line => decimal.Parse(line)).ToArray();
从那里你可以迭代数组并将它们添加到列表框中。
要查找小数组数组的总计/平均值/高/低,您可以再次使用linq扩展名。
var total = sales.Sum();
var average = sales.Average();
var high = sales.Max();
var low = sales.Min();
那应该为您提供要显示的数据。希望这会有所帮助。