c# – Console.Read被忽略
发布时间:2020-12-15 04:07:20 所属栏目:百科 来源:网络整理
导读:我是C#语言的新手,只是开始学习XNA Game Studio for X-box. 我对Java和C有一些小小的经验,所以我不是TOTAL noob.这就是为什么这个问题对我来说非常沮丧. 我创建了一个简单的代码,用于添加用户输入的两个数字.非常简单的东西,但是我感觉到的任何新语言都是一
我是C#语言的新手,只是开始学习XNA Game Studio for X-box.
我对Java和C有一些小小的经验,所以我不是TOTAL noob.这就是为什么这个问题对我来说非常沮丧. 我创建了一个简单的代码,用于添加用户输入的两个数字.非常简单的东西,但是我感觉到的任何新语言都是一个很好的第一步. 我已经声明了我的变量,并试图使用Console.Read()来获取用户添加的数字.到目前为止,代码输出我想要的消息,然后停止并从用户读取单个输入.之后,它搞砸了.控制台输出下一条消息,读取一些随机数(无输入),然后将它们相加并立即输出. 这是我的代码: using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Add { class Program { static void Main(string[] args) { Console.WriteLine("Please enter the first number to add: "); int firstNumber = Console.Read(); Console.WriteLine("Please enter the second number to add: "); int secondNumber = Console.Read(); int Sum = firstNumber + secondNumber; Console.WriteLine("The total of the two numbers is: " + Sum); } } } 样品运行: 请输入要添加的第一个数字: 2 请输入第二个数字: 两个数字的总和是:63 请输入要添加的第一个数字: 3 请输入第二个数字: 这两个数字的总和是:64 它继续这样,好像第二个数字是61. 提前感谢任何帮助! 解决方法
这是因为它正在从控制台读取下一个字符,然后将其转换为int,这给出了ASCII值,而不是数值.所以输入2将被解释为字符’2′,并带有ascii代码50.尝试这样做:
int firstNumber = Int32.Parse(Console.ReadLine()); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |