out传值
Posted 幸福的谎言
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了out传值相关的知识,希望对你有一定的参考价值。
//传值是指只将这个变量的值给拿走,不返还,除非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(); } } }
以上是关于out传值的主要内容,如果未能解决你的问题,请参考以下文章