C# 如何调试C方法为什么不返回预期值?

C# 如何调试C方法为什么不返回预期值?,c#,C#,我在上C课程,我想我知道怎么做,但我想不是。无论如何,它希望我做这些事情: 首先声明一个本地int magicNumber变量,并使用myNumber输入参数中的值初始化它。然后需要进行一系列计算,每次计算都使用magicNumber变量中的当前值,并将结果存储回同一个变量中 将magicNumber的当前值乘以3,并将结果存储回magicNumber 将6添加到magicNumber的当前值,并将结果存储回magicNumber 将magicNumber的当前值除以3,并将结果存储回magic

我在上C课程,我想我知道怎么做,但我想不是。无论如何,它希望我做这些事情:

首先声明一个本地int magicNumber变量,并使用myNumber输入参数中的值初始化它。然后需要进行一系列计算,每次计算都使用magicNumber变量中的当前值,并将结果存储回同一个变量中

将magicNumber的当前值乘以3,并将结果存储回magicNumber 将6添加到magicNumber的当前值,并将结果存储回magicNumber 将magicNumber的当前值除以3,并将结果存储回magicNumber 从magicNumber的当前值中减去原始myNumber输入,并将结果存储回magicNumber

这是我的密码

private int findMagicNumber(int myNumber)
{
    // replace with student code
    return 0; //What is this???
    int magicNumber;
    magicNumber = magicNumber * 3;
    magicNumber = magicNumber + 6;
    magicNumber = magicNumber / 3;
    magicNumber = magicNumber - myNumber;
        
}

您应该注意以下几点:

在返回后编写的代码将永远不会执行,因此findMagicNumber方法将始终返回0 变量magicNumber从未初始化,因此其值默认为0。 选择一个随机数来初始化你的魔法数字会更有意义。 简言之,您的签名如下:

public static Random rndSeed = new Random();
public static int findMagicNumber(int myNumber)
{
    int magicNumber = rndSeed.Next(1,100);
    magicNumber = magicNumber * 3;
    magicNumber = magicNumber + 6;
    magicNumber = magicNumber / 3;
    magicNumber = magicNumber - myNumber;
    return magicNumber;
}
按如下方式调用该方法:

Console.WriteLine("Try 1 :- {0} is my number, Magic Number will be {1}", 12,findMagicNumber(12));
// sample OutPut - Try 1 :- 12 is my number, Magic Number will be 63

这是一个给你的问题。

有什么问题吗?你的magicNumber永远不会执行,因为有一个返回语句,它会将控制权返回给返回值为0的方法调用方。在编写标题时,请始终编写一个有用的标题。你收到的一些不好的接待可能是由于这一点,请你停止我的恳求可能惹恼了读者。请考虑添加一个你所改变的代码的描述,这里只会劝阻你的解决方案,即使你设法得到一些优惠。
Console.WriteLine("Try 1 :- {0} is my number, Magic Number will be {1}", 12,findMagicNumber(12));
// sample OutPut - Try 1 :- 12 is my number, Magic Number will be 63