0

对 C# 来说真的很新。我想检查一个整数(来自用户的输入)是正数、负数还是零。它适用于正数和零,但当我输入负数时不起作用!

我尝试将输入类型从用户更改为 int、float、decimal、double 等,但没有任何效果。还尝试了 switch 语句。我正在使用 Visual Studio 并调试到 Mac 终端,这可能是问题吗?我可以在写其他代码时使用负数,比如数学题等等。

Console.Write("Enter a number: ");   
int number = int.Parse(Console.ReadLine());   
if (number == 0)   
{
     Console.Write("zero");
}
else if (number < 0)
{
    Console.Write("negative");
}
else
{       
     Console.Write("positive");

(我也尝试过使用 switch 语句:)

Console.Write("Enter a number: ");
int number = int.Parse(Console.ReadLine());
switch(number)   
{   
     case 0: Console.Write("zero"); break;    
     case -1: Console.Write("negative"); break;    
     case 1: Console.Write("positive"); break;    
}

在这两种情况下,当输入正数或 0 时,我都会得到正确的输出,但是当输入负数时,我会收到错误消息:“输入字符串的格式不正确”

4

1 回答 1

0

它应该可以工作,因为这里的 int 是 Int32 范围是 -2,147,483,648 到 2,147,483,647。如果您在此范围内输入任何数字,它应该可以工作。对于超出此范围的数字,您将获得“值太小或太大”。请分享您输入的号码

于 2019-04-22T06:34:06.957 回答