从最低值开始,以圆形数组打印每个值

时间:2016-09-02 13:32:35

标签: c# arrays

我遇到这种情况:

int[] array = new int[] {7, 5, 6}

我的索引i的值是1,它指向我假设的循环列表的头部。零位的值“7”是尾部。

我的目标是打印:

5,6,7

我是否需要特定的结构?或者我可以使用简单的数组来完成它吗?

3 个答案:

答案 0 :(得分:4)

使用单个“for”循环和模运算符:

int[] array = new int[] {7, 5, 6};

int start = 1;

for (int idx=0; idx<array.Length; idx++)
  Console.Write(array[(idx+start) % array.Length]);

答案 1 :(得分:1)

没有任何开箱即用,但以下内容将围绕阵列。

        int[] array = new int[] { 7, 5, 6 };
        int startPosition = 1;
        string result = "";

        // Run from the start position to the end of the array
        for (int i = startPosition;  i < array.Length; i++)
        {
            result += array[i] + ",";
        }

        // Wrapping around, run from the beginning to the start position
        for (int i = 0; i < startPosition; i++)
        {
            result += array[i] + ",";
        }

        // Output the results
        result = result.TrimEnd(',');
        Console.WriteLine(result);       
        Console.Read();

答案 2 :(得分:1)

如果您想打印5,6,7,可以使用:

  <connectionStrings>
    <add name="ZzaDbContext" connectionString="server=.;database=Zza;trusted_connection=true" providerName="System.Data.SqlClient" />
  </connectionStrings>