我想用用户给出的小数位数来计算 Pi,当输入为 0 时,变量 piNumber 应设置为“3”而不是“3”,以便输出没有无用的逗号。
这有效
static string PiNumberFinder(int amountOfDigits)
{
string piNumber = "3,";
int dividedBy = 11080585;
int divisor = 78256779;
int result;
for (int i = 0; i < amountOfDigits; i++)
{
if (dividedBy < divisor)
dividedBy *= 10;
result = dividedBy / divisor;
string resultString = result.ToString();
piNumber += resultString;
dividedBy = dividedBy - divisor * result;
}
return piNumber;
}
但如果使用 if 语句则不会
static string PiNumberFinder(int amountOfDigits)
{
int dividedBy = 11080585;
int divisor = 78256779;
int result;
if (amountOfDigits == 0)
{
string piNumber = "3";
}
else
{
string piNumber = "3,";
}
for (int i = 0; i < amountOfDigits; i++)
{
if (dividedBy < divisor)
dividedBy *= 10;
result = dividedBy / divisor;
string resultString = result.ToString();
piNumber += resultString; // I get an error here
dividedBy = dividedBy - divisor * result;
}
return piNumber; // I get an error here
}
对于上面代码中指向的行,我两次收到错误“名称 'piNumber' 在当前上下文中不存在”
您声明并赋值给piNumber
内部变量if
声明,因此它在此范围之外不可用。尝试先声明一下if
string piNumber;
if (amountOfDigits == 0)
{
piNumber = "3";
}
else
{
piNumber = "3,";
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)