c# – Console.Read被忽略

前端之家收集整理的这篇文章主要介绍了c# – Console.Read被忽略前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我是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());
原文链接:https://www.f2er.com/csharp/92729.html

猜你在找的C#相关文章