我不知道如何计算平均值。我正在获得我期望的输出,除了我希望在我的所有其他信息旁边的列中输入的平均值。非常感谢能为我看的人。
using System;
using System.IO;
public static class Program
{
static void Main()
{
string file="marks2D.txt";
string outfile="average.csv";
StreamReader sr= new StreamReader(file);
StreamWriter outstream= new StreamWriter(outfile);
double[,] temp=new double[5,6];
int num=0;
double ave=0;
for(int i=0; i<temp.GetLength(0); i++)
{
double sum=0;
string line=sr.ReadLine();
for(int j=0; j<temp.GetLength(1); j++)
{
double m=double.Parse(line);
temp[i,j]=m;
sum+=m;
ave = sum/5;
//temp[i,j]=line;
outstream.WriteLine(ave);
outstream.WriteLine("{0,1}", temp[i,j]);
}
}
outstream.WriteLine();
Console.WriteLine();
sr.Close();
outstream.Close();
}
}
答案 0 :(得分:1)
您已将temp声明为二维数组。
string[,] temp=new string[5,6];
然后尝试使用一个索引
设置2D数组的值temp[num]=line;
这是不可能的。对于2D数组,必须使用2个索引
temp[i, j]=line;
您收到“当前上下文中不存在名称字段”错误,因为您已注释掉字段变量,因此它不存在。
答案 1 :(得分:0)
您已经声明了一个二维字符串数组,但是您将其作为循环内的单维数组引用。
更改行
temp[num]=line;
到此:
temp[i,j]=line;
另外,你忘了评论第二个outstream.WriteLine,我相信变量字段被注释掉了。
//outstream.WriteLine(field[num]);