C# 函数中的调用过程

C# 函数中的调用过程,c#,C#,尝试从函数fibI中调用过程循环,但错误为: 非静态字段、方法或对象需要对象引用 属性数组\u计算器.Fibonacci\u面板.cycles' 程序如下 public void cycles() { k++; } 以及功能 public static double fibI(double input, int k) { if (input == 1 || input == 2)

尝试从函数fibI中调用过程循环,但错误为:

非静态字段、方法或对象需要对象引用 属性数组\u计算器.Fibonacci\u面板.cycles'

程序如下

      public void cycles()
      {
          k++;
      }  
以及功能

     public static double fibI(double input, int k)
     {
         if (input == 1 || input == 2)
         {
             return 1;
         }
         else
         {
             double fib1 = 0;
             double fib2 = 1;
             double fibResult = 0;
             for(double i = 1; i < input; i++ )
             {
                 fibResult = fib1 + fib2;
                 fib1 = fib2;
                 fib2 = fibResult;
                 cycles();
             }

             return fibResult; ;
         }
您的过程不是静态的。要修复代码,只需更改:

public static void cycles() { k++; }

此外,C中没有过程。这是一个正常函数。

注意,k也应该是静态变量。但现在的问题是——什么传递给了fiBI+1。平心而论,“过程”是一种与语言无关的方式,用于指代较大程序中的任何可调用子程序。呃,它被称为方法,而不是函数或过程。函数fibI用于计算fibonacci级数中的第n个数。我们的老师说像这样做,以及使用递归的工作!我们需要实现一个计数器来计算计算结束值需要多少个周期。我计划每个周期调用cycles来计算有多少个周期,因为我无法通过功能返回它,可能我根本看不到它,但是k的内涵是什么?除了k++可能的副本和无数其他sk被用来计算循环运行的次数之外,我找不到任何用法-这是一个学校项目