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

为什么还是有一两个不能由大到小呢??
static void Main(string[] args)
  {
  double[] y = new double[100];

  int max = 0;
  for (int i = 0; i <= 99; i++)
  {
  y[i] = Math.Sin(i + 1);
  }

  for (int x = 0; x <= 98; x++)
  {
  max = x;

  for (int i = x; i <= 99; i++)
  {
  if (y[i] > y[max])

  max = i;

  double t;
  t = y[x];
  y[x] = y[max];
  y[max] = t;


  }


  for (int i = 0; i <= 99; i++)
  {
  Console.WriteLine(y[i]);
  }

  }
  }

------解决方案--------------------
你的 if (y[i] > y[max]) 子句应该用 {}括起来呀。