无涯教程-C# - 传递函数

64 阅读1分钟

您可以在C#中将数组作为函数参数传递,以下示例演示了此-

using System;

namespace ArrayApplication { class MyArray { double getAverage(int[] arr, int size) { int i; double avg; int sum=0;

     </span><span class="kwd">for</span><span class="pln"> </span><span class="pun">(</span><span class="pln">i</span><span class="pun">=</span><span class="lit">0</span><span class="pun">;</span><span class="pln"> i </span><span class="pun">&lt;</span><span class="pln"> size</span><span class="pun">;</span><span class="pln"> </span><span class="pun">++</span><span class="pln">i</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
        sum </span><span class="pun">+=</span><span class="pln"> arr</span><span class="pun">[</span><span class="pln">i</span><span class="pun">];</span><span class="pln">
     </span><span class="pun">}</span><span class="pln">
     avg</span><span class="pun">=(</span><span class="kwd">double</span><span class="pun">)</span><span class="pln">sum</span><span class="pun">/</span><span class="pln">size</span><span class="pun">;</span><span class="pln">
     </span><span class="kwd">return</span><span class="pln"> avg</span><span class="pun">;</span><span class="pln">
  </span><span class="pun">}</span><span class="pln">
  </span><span class="kwd">static</span><span class="pln"> </span><span class="kwd">void</span><span class="pln"> </span><span class="typ">Main</span><span class="pun">(</span><span class="kwd">string</span><span class="pun">[]</span><span class="pln"> args</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
     </span><span class="typ">MyArray</span><span class="pln"> app</span><span class="pun">=</span><span class="kwd">new</span><span class="pln"> </span><span class="typ">MyArray</span><span class="pun">();</span><span class="pln">
     
     </span><span class="com">/* 具有5个元素的int数组 */</span><span class="pln">
     </span><span class="kwd">int</span><span class="pln"> </span><span class="pun">[]</span><span class="pln"> balance</span><span class="pun">=</span><span class="kwd">new</span><span class="pln"> </span><span class="kwd">int</span><span class="pun">[]{</span><span class="lit">1000</span><span class="pun">,</span><span class="pln"> </span><span class="lit">2</span><span class="pun">,</span><span class="pln"> </span><span class="lit">3</span><span class="pun">,</span><span class="pln"> </span><span class="lit">17</span><span class="pun">,</span><span class="pln"> </span><span class="lit">50</span><span class="pun">};</span><span class="pln">
     </span><span class="kwd">double</span><span class="pln"> avg</span><span class="pun">;</span><span class="pln">

     </span><span class="com">/* 将指针传递给数组作为参数 */</span><span class="pln">
     avg</span><span class="pun">=</span><span class="pln">app</span><span class="pun">.</span><span class="pln">getAverage</span><span class="pun">(</span><span class="pln">balance</span><span class="pun">,</span><span class="pln"> </span><span class="lit">5</span><span class="pln"> </span><span class="pun">)</span><span class="pln"> </span><span class="pun">;</span><span class="pln">

     </span><span class="com">/* 输出返回的值 */</span><span class="pln">
     </span><span class="typ">Console</span><span class="pun">.</span><span class="typ">WriteLine</span><span class="pun">(</span><span class="pln"> </span><span class="str">"Average value is: {0} "</span><span class="pun">,</span><span class="pln"> avg </span><span class="pun">);</span><span class="pln">
     </span><span class="typ">Console</span><span class="pun">.</span><span class="typ">ReadKey</span><span class="pun">();</span><span class="pln">
  </span><span class="pun">}</span><span class="pln">

} }

编译并执行上述代码时,将生成以下输出-

Average value is: 214.4

参考链接

www.learnfk.com/csharp/csha…