如何解决Console.ReadLine无法正常工作,不会给用户键入的机会
这是一个简单的程序,可以将人的年转换为狗年,但是字符串Age = Console.ReadLine();该程序无法正常运行,不会给用户输入输入的机会,而是输出:
what is your age?
your age in dog years is:0
我的代码:
using System;
namespace Review
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("what is your age?");
string Age = Console.ReadLine(); // this line is as if not read by the program
int userAge = Convert.ToInt32(Age);
Console.WriteLine("your age in dog years is:" + userAge/5);
}
}
}
解决方法
它正在我的机器上工作。 但是您必须谨慎使用除法表达式。 如果UserAge为4,它将返回0。 请使用双重数据类型:
static void Main(string[] args)
{
Console.WriteLine("what is your age?");
string Age = Console.ReadLine(); // this line is as if not read by the program
int userAge = Convert.ToInt32(Age);
Console.ForegroundColor = ConsoleColor.Blue;
Console.WriteLine("userAge: " + userAge.ToString());
double dogsAge = userAge / 5d;
Console.ForegroundColor = ConsoleColor.Green;
Console.WriteLine("your age in dog years is:" + dogsAge);
Console.ForegroundColor = ConsoleColor.White;
}
控制台:
what is your age?
4
userAge: 4
your age in dog years is:0,8
,
您的代码正常工作,并且没有问题,您只是看不到结果。
您所需要做的就是在代码末尾添加一个 Console.ReadLine();
。
static void Main(string[] args)
{
Console.WriteLine("what is your age?");
string Age = Console.ReadLine(); // this line is as if not read by the program
int userAge = Convert.ToInt32(Age);
Console.WriteLine("your age in dog years is:" + userAge / 5);
Console.ReadLine();
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。