簡體   English   中英

如何在C#中的for循環中遞增i

[英]How to increment i in for loop in C#

我正在嘗試修改下面的代碼,因此列中的每個第一個數字都基於行號。

int i, sum = 0;

for (int row = 0; row < 7;  row++)
{
    for (i = 1; i < 6; i++)
    {
        sum = sum + i;
        Console.Write("{0} ", i);
    }

    Console.WriteLine(sum);
    sum = 0;                
}

Console.Read();

在控制台中顯示:

1 2 3 4 5 15
1 2 3 4 5 15
1 2 3 4 5 15
1 2 3 4 5 15
1 2 3 4 5 15
1 2 3 4 5 15
1 2 3 4 5 15

但我正在嘗試像這樣:

1 2 3 4 5 sum
2 3 4 5 6 sum
3 4 5 6 7 sum
4 5 6 7 8 sum
and so on..
......
....

關於如何解決這個問題的任何想法?

將內部循環更改為

for (int i = row + 1; i < row + 6; i++)

更換

sum = sum + i;
Console.Write("{0} ", i);

在這里輸入代碼

number = number + row
sum = sum + number;
Console.Write("{0} ", number);

這樣,您可以使用可變行來跟蹤該行的起始編號。

如果您不需要控制台語句而只需要總和,則可以不使用內部循環,並且:

sum = Enumerable.Sum(Enumerable.Range(row+1, 5));

是LINQ

或者,如果您需要控制台語句:

Enumerable.Range(row+1, 5).ToList().ForEach(c => sum += c; Console.Write(c));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM