在下面给出的程序中,Math.Sqrt函数抛出一个错误
“表达式表示预期有variable', where a
方法组。”
这里看起来有什么问题?
using System;
class program{
static void Main(){
Console.WriteLine("Enter the sides(a,b,c) of a triangle :");
int a = Convert.ToInt16(Console.ReadLine());
int b = Convert.ToInt16(Console.ReadLine());
int c = Convert.ToInt16(Console.ReadLine());
double s = (a+b+c)/2;
double area = Math.Sqrt(s(s-a)(s-b)(s-c));
if (a==b&&b==c){
Console.WriteLine("This is an Equilateral trangle");
}
else if(a==b&&b!=c||a!=b&&b==c){
Console.WriteLine("This is an Isosceles trangle");
}
else{
Console.WriteLine("This is an Scalene trangle");
}
}
}here
答案 0 :(得分:1)
C#不会采用与记下等式相同的方式进行乘法,而是将s(s-a)
视为名为s
的函数,其参数为s-a
。您需要明确说明乘号:
double area = Math.Sqrt(s*(s-a)*(s-b)*(s-c));