我是一个刚刚开始接触C#的菜鸟. 问这样的问题自己都有些害臊.但是我确实很想弄明白了,我搜了很多地方也都搜不到.所以请知道的人告诉我一下,谢谢了..这是<入门经典>第六章里面的一段代码,我想问的是,如果想返回i的值来给主函数用,即在屏幕上显示i的值,该怎么修改这段代码呢?namespace Ch06Ex02
{
   class Program
   {
      static int MaxValue(int[] intArray)
      {
         int maxVal = intArray[0];
         for (int i = 1; i < intArray.Length; i++)
         {
            if (intArray[i] > maxVal)
               maxVal = intArray[i];
         }
         return maxVal;
      }      static void Main(string[] args)
      {
         int[] myArray = {
            1, 8, 3, 6, 2, 5, 9, 3, 0, 2
         };
         int maxVal = MaxValue(myArray);
         Console.WriteLine("The maximum value in myArray is {0}", maxVal);
         Console.ReadKey();
      }
   }

解决方案 »

  1.   

    if (intArray[i] > maxVal)
    {
        maxVal = intArray[i]; 
        Console.WriteLine(i);
    }
      

  2.   

    namespace Ch06Ex02 

      class Program 
      { 
          static int MaxValue(int[] intArray) 
          { 
            int maxVal = intArray[0]; 
            for (int i = 1; i < intArray.Length; i++) 
            { 
                Console.WriteLine("The maximum value in myArray is {0}", intArray[i]); 
                if (intArray[i] > maxVal) 
                  maxVal = intArray[i]; 
                  
            } 
            return maxVal; 
          }       static void Main(string[] args) 
          { 
            int[] myArray = { 
                1, 8, 3, 6, 2, 5, 9, 3, 0, 2 
            }; 
            int maxVal = MaxValue(myArray); 
            Console.WriteLine("The maximum value in myArray is {0}", maxVal); 
            Console.ReadKey(); 
          } 
      }
      

  3.   

    namespace Ch06Ex02
    {
        class Program
        {
            static int MaxValue(int[] intArray)
            {
                int maxVal = intArray[0];
                for (int i = 1; i < intArray.Length; i++)
                {
                    if (intArray[i] > maxVal) maxVal = intArray[i];
                }
                return maxVal;
            }        static void Main(string[] args)
            {
                int[] myArray = { 
                1, 8, 3, 6, 2, 5, 9, 3, 0, 2 
            };
                Console.WriteLine("The maximum value in myArray is {0}", MaxValue(myArray));
                Console.ReadKey();
            }
        }
    }
      

  4.   

    你的目的是想知道这个最大值在什么位置是吧?namespace Ch06Ex02
    {
      class Program
      {
          static void Main(string[] args)
          {
            int[] myArray = {
                1, 8, 3, 6, 2, 5, 9, 3, 0, 2
            };
            int maxVal = intArray[0];
            int index = 0;
            for (int i = 1; i < intArray.Length; i++)
            {
                if (intArray[i] > maxVal)
                {
                    maxVal = intArray[i];
                    index = i;
                }
            }
            Console.WriteLine("The maximum value in myArray is {0}, whose index is {1}", maxVal,index);
            Console.ReadKey();
          }
      }
      

  5.   

    你是想知道第几个元素是最大值,对不对啊,用ref或者out都可以了
    using System;
    using System.Collections.Generic;
    using System.Text;namespace Ch06Ex02
    {
        class Program
        {
            static int MaxValue(int[] intArray,ref int num)
            {
                int maxVal = intArray[0];
                for (int i = 1; i < intArray.Length; i++)
                {
                    if (intArray[i] > maxVal)
                    {
                        num = i;
                        maxVal = intArray[i];
                     
                    }
                }
                return maxVal;
            }        static void Main(string[] args)
            {
                int[] myArray = { 1, 8, 3, 6, 2, 5, 9, 3, 0, 2 };
                int num = -1;
                int maxVal = MaxValue(myArray,ref num);
                Console.WriteLine("The maximum value in myArray is {0},the position is {1}", maxVal,num);
                
                Console.ReadKey();
            }
        }
    }
      

  6.   

    方法里面加个下标的参数就可以了呀。namespace Ch06Ex02 

      class Program 
      { 
          static int MaxValue(int[] intArray) 
          { 
            int maxVal = intArray[0];
            int index = 0; 
            for (int i = 1; i < intArray.Length; i++) 
            { 
                if (intArray[i] > maxVal) 
                  {
                   maxVal = intArray[i]; 
                   index = i;
                  }
            } 
            return index; 
          }       static void Main(string[] args) 
          { 
            int[] myArray = { 
                1, 8, 3, 6, 2, 5, 9, 3, 0, 2 
            }; 
            int index = MaxValue(myArray); 
            Console.WriteLine("The index of maximum value in myArray is {0}", index); 
            Console.ReadKey(); 
          } 
      }