首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

上面三段代码,怎么用循环写出

2013-03-10 
下面三段代码,如何用循环写出?private double sum 0private double sum1 0private double sum2 0p

下面三段代码,如何用循环写出?
private double sum  = 0;
    private double sum1 = 0;
    private double sum2 = 0;
    private double sum3 = 0;
    private double sum4 = 0;
    private double sum5 = 0;
    private double sum6 = 0;
    private double sum7 = 0;
    private double sum8 = 0;
    private double sum9 = 0; 
----------------------------------------
sum += Convert.ToDouble(e.Row.Cells[2].Text);
            sum1 += Convert.ToDouble(e.Row.Cells[3].Text);
            sum2 += Convert.ToDouble(e.Row.Cells[4].Text);
            sum3 += Convert.ToDouble(e.Row.Cells[5].Text);
            sum4 += Convert.ToDouble(e.Row.Cells[6].Text);
            sum5 += Convert.ToDouble(e.Row.Cells[7].Text);
            sum6 += Convert.ToDouble(e.Row.Cells[8].Text);
            sum7 += Convert.ToDouble(e.Row.Cells[9].Text);
            sum8 += Convert.ToDouble(e.Row.Cells[10].Text);
            sum9 += Convert.ToDouble(e.Row.Cells[11].Text);
---------------------------
e.Row.Cells[0].Text = "合计:";
            e.Row.Cells[2].Text = sum.ToString();
            e.Row.Cells[3].Text = sum1.ToString();
            e.Row.Cells[4].Text = sum2.ToString("f");
            e.Row.Cells[5].Text = sum3.ToString("f");
            e.Row.Cells[6].Text = sum4.ToString("f");
            e.Row.Cells[7].Text = sum5.ToString("f");
            e.Row.Cells[8].Text = sum6.ToString("f");
            e.Row.Cells[9].Text = sum7.ToString("f");
            e.Row.Cells[10].Text = sum8.ToString("f");
            e.Row.Cells[11].Text = sum9.ToString("f"); 
[解决办法]


        const int SUMSIZE=10;
        double[] sums;
        public void Init()
        {
            sums=new double[SUMSIZE];
        }


        public void Fn(e)
        {
            for (int n = 0; n < SUMSIZE; n++)
            {
                sums[n] += Convert.ToDouble(e.Row.Cells[n + 2].Text);
            }
        }
        public void Display()
        {
            for (int n = 0; n < SUMSIZE; n++)
            {
                e.Row.Cells[n + 2].Text = sums[n].ToString();
            }
        }


[解决办法]
变量用数组,这样就能循环了
private double []sum  = new double[]{0,0,0,0,0,0,0,0,0,0};

for(int i=0;i<10;i++)
{
sum[i] += Convert.ToDouble(e.Row.Cells[i+2].Text);
}

e.Row.Cells[0].Text = "合计:";
for(int i=0;i<10;i++)
{
   e.Row.Cells[i+2].Text = sum[i].ToString();
}

热点排行