如何从控制台读取连续的输入行以用于Add()方法?
问题描述:
以下是我的代码:如何从控制台读取连续的输入行以用于Add()方法?
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace JeffOrrisSimpleCalculator._1
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Simple Calculator");
Console.WriteLine("\t1> Add");
Console.WriteLine("\t2> Subtract");
Console.WriteLine("\t3> Multiply");
Console.WriteLine("\t4> Divide");
Console.WriteLine("\t5> Quit");
Console.WriteLine();
Console.Write("Enter Selection: ");
string myValue = ValidateData();
Console.WriteLine(myValue);
Console.Write("Enter number one: ");
Console.ReadLine();
Console.Write("Enter number two: ");
Console.ReadLine();
string mySum = Add();
Console.WriteLine(mySum);
Console.Read();
}//end main
private static string ValidateData()
{
string temp = Console.ReadLine();
if ((temp == "1") || (temp == "2") || (temp == "3") || (temp == "4") || (temp == "5"))
{
//string Response = "Thank You";
//return Response;
return null;
}
else
{
string Response = "Please enter a valid selection";
return Response;
}
}//end ValidateData
private static string Add()
{
string numberOne = Console.ReadLine();
double temp1 = Convert.ToDouble(numberOne);
string numberTwo = Console.ReadLine();
double temp2 = Convert.ToDouble(numberTwo);
double total = temp1 + number2;
string myTotal = Convert.ToString(total);
return myTotal;
}
}//end class
}//end namespace
*我只是关心add方法。我提示用户输入2个数字,我需要使用add方法添加。我相信我会过度思考这一点。我习惯于Windows窗体而不是控制台应用程序。我无法弄清楚如何从Console.ReadLine连续保存这些输入变量。
答
进出口提示用户输入两个数字
是的,你是提示用户 - 但此时你完全无视他们的意见。这:
Console.Write("Enter number one: ");
Console.ReadLine();
Console.Write("Enter number two: ");
Console.ReadLine();
也许应该更喜欢:
Console.Write("Enter number one: ");
string firstLine = Console.ReadLine();
Console.Write("Enter number two: ");
string secondLine = Console.ReadLine();
接下来需要解决如何在串转换成数字。查看int.TryParse
之类的步骤。
(您可能希望在要求“第二个”之前验证“第一个” - 考虑创建一个方法,该方法接受一个提示字符串并一直提示用户,直到他们实际输入一个数字 - 然后从方法返回)
谢谢你......我整晚都被烧毁了。我没有意识到每次提示用户后都必须声明readline变量。我现在可以用我的其他方法完成。我无法赞扬你,因为我没有15的声望。 – 2013-04-09 14:13:32
@JeffOrris:你不必每次都声明一个不同的变量 - 但方法的返回值是用户输入的行。你只需要使用,但是你想:) – 2013-04-09 14:14:15