黑马程序员技术交流社区

标题: 测试题:写一个方法,计算一个int类型数组中每个元素的总... [打印本页]

作者: wq12342008    时间: 2014-4-15 19:49
标题: 测试题:写一个方法,计算一个int类型数组中每个元素的总...
本帖最后由 wq12342008 于 2014-4-16 14:41 编辑

这个难为住小弟了,求高人解答!
作者: 伪善者。    时间: 2014-4-15 20:42
刚写的 亲可以看下
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;

  5. namespace ConsoleApplication1
  6. {
  7.     class Program
  8.     {
  9.         static void Main(string[] args)
  10.         {
  11.             int[] s = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };//定义初始数组
  12.             int max;//接受最大和最小值
  13.             int min;

  14.             int sUm = Check(s, out  max, out min);//由于方法返回和是int 类型 定义一个int类型的变量接受 和
  15.             Console.WriteLine("和为{0},最大值{1}最小值{2}", sUm, max, min);
  16.             Console.ReadKey();


  17.         }
  18.         public static int Check(int[] value, out int max, out int min)//此方法需要返回3个值,一个用方法返回 另外两个通过参数返回
  19.         {
  20.             int sum = 0;//储存数组的和
  21.             max = value[0];//令最大和最小值都为传入数组的第一个元素的值
  22.             min = value[0];
  23.             for (int i = 0; i < value.Length; i++)
  24.             {
  25.                 if (max < value[i])//下标为i的元素 如果大约max 则赋给max
  26.                 {
  27.                     max = value[i];
  28.                 }
  29.                 if (min > value[i])//下标为i的元素 如果小约min 则赋给min
  30.                 {
  31.                     min = value[i];
  32.                 }
  33.                 sum += value[i];
  34.             }
  35.             return sum;

  36.         }
  37.     }
  38. }
复制代码

作者: 爱吃桃子的猫    时间: 2014-4-15 21:12
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;

  5. namespace 参数__返回最大值最小值求和
  6. {
  7.     class Program
  8.     {
  9.         static void Main(string[] args)
  10.         {
  11.             int[] nums = { 1, 2, 4, 6, 3, 5 };
  12.             int max,min,sum;
  13.             sum =compute(nums, out max, out min);
  14.             Console.WriteLine("数组的和为{0},最大值为{1}最小值为{2}",sum,max,min);
  15.             Console.ReadKey();
  16.         }
  17.         /// <summary>
  18.         /// 计算一个int类型数组中每个元素的总和 和 最大值与最小值?
  19.         /// </summary>
  20.         /// <param name="max">最大值</param>
  21.         /// <param name="min">最小值</param>
  22.         /// <returns>和</returns>
  23.         public static int compute(int[] numbers, out int max, out int min)
  24.         {
  25.             int sum = 0;//定义数组的和
  26.             max = numbers[0];//初始最大值为数组的第一个元素
  27.             min = numbers[0];//初始最大值为数组的第一个元素
  28.             for (int i = 0; i < numbers.Length; i++)//遍历数组
  29.             {
  30.                 sum += numbers[i];
  31.                 if (numbers[i] > max)//下标为i的元素 如果大于max 则赋给max
  32.                 {
  33.                     max = numbers[i];
  34.                 }
  35.                 if (numbers[i] < min)//下标为i的元素 如果小约min 则赋给min
  36.                 {
  37.                     min = numbers[i];
  38.                 }
  39.             }
  40.             return sum;
  41.         }
  42.     }
  43. }
复制代码
希望对你有帮助,具体可以看看苏坤老师的C#编程基础33-冒泡排序,34-方法,35-参数,36-返回值这几课。

作者: 回忆~坚    时间: 2014-4-15 22:23
本帖最后由 回忆~坚 于 2014-4-15 22:26 编辑
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;

  6. namespace SumMaxMin
  7. {
  8.     class Program
  9.     {
  10.         static void Main(string[] args)
  11.         {
  12.             int[] arr=new int[]{ 5,3,56,35,6,8,6,3,2,1,46,23,5,56,146,53,5,3,8,6,9};
  13.             int max, min,sum;//定义和,最大值最小值;
  14.             sum = GetSumMaxMin(arr, out max, out min);//通过方法返回和,最大值,最小值
  15.             Console.WriteLine("该数组元素的值得总和为{0},最大值为{1},最小值为{2}",sum,max,min);

  16.             Console.ReadKey();
  17.         }

  18.         /// <summary>
  19.         /// 求数组元素总和,最大值,最小值方法
  20.         /// </summary>
  21.         /// <param name="arr">需要求求和的数组</param>
  22.         /// <param name="max">返回最大值</param>
  23.         /// <param name="min">返回最小值</param>
  24.         /// <returns></returns>
  25.         public static int GetSumMaxMin(int[] arr,out int max,out int min)//传入一数组,传出最大值和最小值
  26.         {
  27.             int sum = 0;
  28.             Array.Sort(arr);//把传进来的数组拍下序,从小到大排序
  29.             max = arr[arr.Length - 1];//排序后的最后一个元素为最大值
  30.             min = arr[0];//排序后的第一个元素为最小值
  31.             foreach (int num in arr)
  32.             {
  33.                 //遍历数组求元素和
  34.                 sum += num;
  35.             }
  36.             return sum;//返回所求的和
  37.         }
  38.     }
  39. }
复制代码


根据你的要求,我写了下,这是我能想的写法,希望对你有用!
作者: 鲤鱼    时间: 2014-4-15 22:28
…………………………各位手速真快
作者: czwanglei    时间: 2014-4-16 10:02
基础题,请认真看视频。。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2