我在尝试修复简单的C#代码时遇到了问题。这里的代码:未处理的异常:System.FormatException
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace MoonGravity
{
class MoonGravity
{
static void Main(string[] args)
{
int number = Convert.ToInt32(Console.ReadLine());
float gravity = (number * 0.17f);
Console.WriteLine(gravity.ToString("F3"));
}
}
}
我需要它输出一个浮点值,所有的值必须精确的3位精度浮点后。我得到它的工作,唯一的问题是,如果我不输入一个整数,它会崩溃。这是我得到的错误。
未处理的异常:System.FormatException:输入字符串的格式不正确。 在System.Number.StringToNumber(字符串str的NumberStyles选项,NumberBuffer &数的NumberFormatInfo信息,布尔parseDecimal) 在System.Number.ParseInt32(字符串s的NumberStyles风格的NumberFormatInfo信息) 在System.Convert.ToInt32(字符串在.... 2015值) 在MoonGravity.MoonGravity.Main(字串[] args)\项目\ ConsoleApplication3 \ ConsoleApplication3 \的Program.cs:行13
我知道问题来自于我Convert.ToInt32
和我试图解决它,但我不能。感谢您的帮助。
'Convert.ToSingle(...)',而不是'(浮动)转换.ToDouble(...)' –