我在嘗試修復簡單的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(...)' –