日期:2014-05-18  浏览次数:20726 次

写一个方法求一个数组的最大值和最小值
static void Main(string[] args)
  {
   
  int a, b;
  int[] num = { 1, 2, 3, 7, 5, 4 };
  int ss=Test(num, out a, out b);
  Console.WriteLine("{0},{1},{2}",ss,a,b);
  }
  static int Test(int[] nums, out int max, out int min)
  {
  int sum = 0; max = nums[0]; min = nums[0];
  for (int i = 0; i < nums.Length;i++)
  {
  sum += nums[i];
  if (max < nums[i])
  {
  max = nums[i];
  }
  if (min > nums[i])
  {
  min = nums[i];
  }
   
  return sum;
  }
  }
提示i++无法访问,不知道是怎么回事,指导~~~

------解决方案--------------------
该方法不需要返回值 故为Void,另外return 后便跳出循环,不会往下执行,i++也就无任何意义
C# code

static void Test(int[] nums, out int max, out int min)
        {
            int sum = 0; max = nums[0]; min = nums[0];
            for (int i = 0; i < nums.Length; i++)
            {
                sum += nums[i];
                if (max < nums[i])
                {
                    max = nums[i];
                }
                if (min > nums[i])
                {
                    min = nums[i];
                }

                //return sum;
            }
           
        }