标签:
//传值是指只将这个变量的值给拿走,不返还,除非return赋值
//将a的值传入函数,无论这个值在函数中如何变化,不会影响main中的值
//传址,将这个变量值拿走,运算完之后再返还回来,不用return赋值
//将a的值传入函数,函数中的这个值如何变化,main中的值也会跟着变化
//相当于:函数中的值,是main种这个a的快捷方式
//out传值9传址)
public void jia(out int a,out int sum)
{
a = 5;
sum=0;
sum=sum +a ;
}
//一元二次方程,把x的值取出来
/// <summary>
/// 有输入值,有返回值,out传值
/// </summary>
/// <param name="a"></param>
/// <param name="b"></param>
/// <param name="c"></param>
/// <param name="x"></param>
/// <param name="x1"></param>
public void z(double a,double b,double c,out double x,out double x1)
{
x = 0;
x1 = 0;
if (a > 0)
{
Console.WriteLine("有两个不同的实数跟");
x = (-b + Math.Sqrt(b * b - 4 * a * c)) / (2 * a);
x1 = (-b - Math.Sqrt(b * b - 4 * a * c)) / (2 * a);
}
else
{
Console.WriteLine("有两个相同的实数根");
x= (-b + Math.Sqrt(b * b - 4 * a * c)) / (2 * a);
x1 = x;
}
}
static void Main(string[] args)
{
//int sum=3;
//Program dd=new Program();
//Console.WriteLine ("sum"+ sum);
//Console .WriteLine (" a"+a);
//Console.ReadLine();
double x;
double x1;
Console.WriteLine("请输入一个数a=");
double a = double.Parse(Console.ReadLine ());
Console.WriteLine("请输入一个数b=");
double b = double.Parse(Console.ReadLine ());
Console.WriteLine("请输入一个数c");
double c = double.Parse(Console.ReadLine());
double de = b * b - 4 * a * c;
if (a == 0)
{
Console.WriteLine("此方程不是一元二次方程");
}
else
{
if (de < 0)
{
Console.WriteLine("此方程没有实数根");
}
else
{
Program m = new Program();
m.z(a, b, c, out x, out x1);
if (x == x1)
{
Console.WriteLine("x=x1" + x);
}
else
{
Console.WriteLine("x="+x);
Console.WriteLine("x1="+x1);
}
}
}
Console.ReadLine();
}
}
}
标签:
原文地址:http://www.cnblogs.com/xingfudehuanyan/p/5295532.html