在c#eror中从Int到double的类型转换
我试图将一个int值转换为double来精确计算平均值,但我得到了这个错误 严重性代码说明项目文件行抑制状态 错误CS1525无效的表达式术语“double” 我已经有一段时间没有使用c#了,所以可能是语法错误。但是环顾网络,我没有找到答案 以下是该程序无法编译的代码在c#eror中从Int到double的类型转换,c#,C#,我试图将一个int值转换为double来精确计算平均值,但我得到了这个错误 严重性代码说明项目文件行抑制状态 错误CS1525无效的表达式术语“double” 我已经有一段时间没有使用c#了,所以可能是语法错误。但是环顾网络,我没有找到答案 以下是该程序无法编译的代码 static int AvgDigits(int n) { return SumDigits(n) / double(Dignum(n)); } 您应该将double括在paradensis((doub
static int AvgDigits(int n)
{
return SumDigits(n) / double(Dignum(n));
}
您应该将
double
括在paradensis((double)(Dignum(n))
中,它将值Dignum(n)
转换为dobule
return SumDigits(n) / ((double)(Dignum(n)));
另外,由于您要将其转换为双精度,因此您的返回类型应为双精度
static double AvgDigits(int n)
{
return SumDigits(n) / ((double)(Dignum(n)));
}
据我所知,该函数应命名为static double bla。您知道,当您返回某个内容时,它必须是与函数的输出值兼容的类型。如果没有,JRE会让您知道,在本例中,应该显式地将double截断为int 在 静态int AvgDigits(int n) 它接收一个int并返回一个int。鉴于该操作实际上是一个double,您可以尝试将函数更改为 静态双AvgDigits(int n)
祝你好运!告诉我它是否有效 这是问题之一。我还忘了将函数返回类型从int改为double。谢谢。