C# 函数中的调用过程
尝试从函数fibI中调用过程循环,但错误为: 非静态字段、方法或对象需要对象引用 属性数组\u计算器.Fibonacci\u面板.cycles' 程序如下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)
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被用来计算循环运行的次数之外,我找不到任何用法-这是一个学校项目