hyetpang 2015-08-27 15:54 采纳率: 39.4%
浏览 2399
已采纳

输出参数解一元二次方程

using System;
using System.Collections.Generic;
using System.Text;

namespace 输出参数求解一元二次方程
{
class Program
{
public static void Root(int a, int b, int c, out double root1, out double root2)
{
double d = b * b - 4 * a * c;
double Sqrt = Math.Sqrt(d);
if (d > 0)
{
root1 = (-b + Sqrt) /( 2 * a);
root2 = (-b - Sqrt) / (2 * a);
}
else if (d == 0)
{
root1 = root2 = -b / (2 * a);
}
else
Console.WriteLine("此方程无根");
}
static void Main(string[] args)
{
int a = 5, b = 6, c = 1;
double root1, root2;
Root (a, b, c, out root1, out root2);
Console.WriteLine("root1 :{0},root2:{1}", root1, root2);
}
}
}
错误提示为控制离开方法之前必须对out参数root1.root2赋值。
我已经赋值了啊,为什么还会提示要对输出参数赋值的错误?

  • 写回答

3条回答

  • threenewbee 2015-08-27 23:18
    关注

    在开头加上
    root1 = 0;
    root2 = 0;

    因为你虽然赋值了,但是赋值是写在if判断内的,不一定执行到。C#语言规定,必须把赋值写在可能程序能执行到的地方。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 微信会员卡接入微信支付商户号收款
  • ¥15 如何获取烟草零售终端数据
  • ¥15 数学建模招标中位数问题
  • ¥15 phython路径名过长报错 不知道什么问题
  • ¥15 深度学习中模型转换该怎么实现
  • ¥15 HLs设计手写数字识别程序编译通不过
  • ¥15 Stata外部命令安装问题求帮助!
  • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
  • ¥15 TYPCE母转母,插入认方向
  • ¥15 如何用python向钉钉机器人发送可以放大的图片?