为什么说有铸造错误

  • 本文关键字:错误 c#
  • 更新时间 :
  • 英文 :


我是c#的新手,我在代码中遇到了一个问题。很明显,这里有一个选角错误,你能告诉我是什么吗?

下面是代码

public static void Main(string[] args)
{
// side a and b
Console.WriteLine("Side A of 90° triangle");
double a = Convert.ToDouble(Console.ReadLine());
Console.WriteLine("Side B");
double b = Convert.ToDouble(Console.ReadLine());
// c^2
int csqr = (a * a) + (b * b);
int hypo = Math.Sqrt(csqr);
// hypo
Console.WriteLine("hypotenuse:-  " + hypo);
}

变量csqr和hypo应该是double类型,而您将它们定义为int。根号是求平方根的一种方法。因此,它接受double类型的形参并返回double。√6文档

csqr变量应该是double类型,因为对双操作数进行算术运算。

不能在整型类型中加入双精度类型。变量hypo csqr必须为双精度

public static void Main(string[] args)
{
//side a and b
Console.WriteLine("Side A of 90° triangle");
double a = Convert.ToDouble(Console.ReadLine());
Console.WriteLine("Side B");
double b = Convert.ToDouble(Console.ReadLine());
//c^2
double csqr = (a * a) + (b * b);
double hypo = Math.Sqrt(csqr);
//hypo
Console.WriteLine("hypotenuse:-  " + hypo);
}

最新更新