为什么这个使用“;函数“;不起作用

本文关键字:不起作用 函数 为什么 | 更新日期: 2023-09-27 18:28:22

我制作了一个小的C#程序,该程序获取一个数组,其中包含一些数字(float),并告诉数组中有多少数字不在区间中]a,b]我成功了。这是程序:

using System;
namespace Exercice_1
{
    class Program
    {
        public static void Main(string[] args)
        {
            Console.WriteLine("a = ?");
            float a = float.Parse(Console.ReadLine());
            Console.WriteLine("b = ?");
            float b = float.Parse(Console.ReadLine());
            float[] t = new float[50];
            for(int i=0; i<t.Length; i++)
            {
                 t[i]=4*i;
            }
            int k = 0;
            for(int i=0; i<t.Length; i++)
            {
                if(t[i] <= a || t[i] > b)
                {
                    k++;
                }
            }
            Console.Write(""+k);
            Console.ReadKey(true);
        }
    }
}

但后来我想尝试制作同样的程序,但要使用"函数"
但我没有成功。这是程序:

using System;
namespace Exercice_2
{
    class Program
    {
        public static void Main(string[] args)
        {
            Console.WriteLine("a = ?");
            float a = float.Parse(Console.ReadLine());
            Console.WriteLine("b = ?");
            float b = float.Parse(Console.ReadLine());
            float[] t = new float[50];
            for(int i=0; i<t.Length; i++)
            {
                t[i]=4*i;
            }
            Console.Write(""+count(float[] t, float a, float b));
            Console.ReadKey(true);
        }
        static int count(float[] u, float x, float y)
        {
            int k = 0;
            for(int i=0; i<u.Length; i++)
            {
                if(u[i] <= x || u[i] > y)
                {
                    k++;
                }
            }
            return k;
         }
    }
}

我也试过把这个函数放在"类程序"之外,但它也不起作用。

这是我第一次尝试使用"函数",所以我可能犯了一些明显的初学者错误。。。

以下是SharpDevelop指出的所有"错误":http://oi62.tinypic.com/dnydsk.jpg

为什么这个使用“;函数“;不起作用

Console.Write(""+count(float[] t, float a, float b));

应该是

Console.Write(""+count(t, a, b));

调用方法时,不需要指定在方法签名中声明的类型

Signiture: count(float[] u, float x, float y)
To Call: count(t, a, b)

此行:

Console.Write(""+count(float[] t, float a, float b));

需要:

Console.Write(count(t, a, b));

当你调用一个函数时,你会传递变量。类型已固定。