A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© zhl406893081 中级黑马   /  2014-3-13 18:11  /  1362 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 zhl406893081 于 2014-3-13 19:05 编辑

函数返回值是数组时如何返回?
我想返回一个数组,但只返回了数组的第一个值,C#里也没有指针,怎么返回一个数组?
  1. static void Main(string[] args)
  2.         {
  3.             int[] sum = new int[7];
  4.             int max = 0, min = 0;
  5.             int[] number = { 30, 43, 5635, 63, 142, 325, 6734 };
  6.             sum[0] = MUS(ref number, out min, out max);
  7.             Console.WriteLine("最小为{0} 最大为{1}", min, max);
  8.             for (int i = 0; i < sum.Length; i++)
  9.             {
  10.                 Console.WriteLine(sum[i]);
  11.             }
  12.             Console.ReadKey();
  13.         }

  14.         static int MUS(ref int[] number, out int min, out int max)
  15.         {
  16.             min = number[0];
  17.             max = number[0];
  18.             int[] aaa = new int[7];
  19.             for (int i = 0; i < number.Length; i++)
  20.             {
  21.                 aaa[i] = number[i];
  22.                 if (number[i] > max)
  23.                     max = number[i];
  24.                 if (number[i] < min)
  25.                     min = number[i];
  26.             }
  27.             return aaa[0];
  28.             
  29.         }
复制代码



评分

参与人数 1技术分 +1 收起 理由
czwanglei + 1

查看全部评分

5 个回复

倒序浏览
将返回值int改为int[]
回复 使用道具 举报

主函数接收返回值时怎么写?
回复 使用道具 举报
如果想返回一个整型数组,那么将函数返回值类型改为 int[] 就可以了;其实求一个数组中的最大值最小值,既然你用 ref 和 out ,函数的返回值可以为 void 的
如果你想测试函数怎么返回一个数组并接收它,可以将 MUS 函数这么定义
  1. static int[] MUS(ref int[] number, out int min, out int max)
复制代码

根据你的代码,然后最后
  1. return aaa
复制代码


在主函数里
  1. sum = MUS(ref number, out min, out max);
复制代码

最后遍历sum数组就可以了

评分

参与人数 1技术分 +1 收起 理由
czwanglei + 1

查看全部评分

回复 使用道具 举报
受教了,问题解决了.
回复 使用道具 举报
把返回值类型也写成数组,int写成int[],在主函数中接收的话就定义一个数组,int[] i,像这样。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马