在C#中,scanf
函數并不是原生支持的,但我們可以使用System.Console.ReadLine()
方法來讀取用戶輸入,然后使用int.Parse()
或int.TryParse()
方法將輸入轉換為整數。為了優化速度,我們可以采取以下措施:
int.TryParse()
方法代替int.Parse()
方法。int.TryParse()
方法在轉換失敗時不會拋出異常,而是返回false,這樣我們可以避免不必要的異常處理開銷。string input = Console.ReadLine();
int result;
if (int.TryParse(input, out result))
{
// 轉換成功,繼續處理
}
else
{
// 轉換失敗,處理錯誤情況
}
string[] inputs = Console.ReadLine().Split(' ');
for (int i = 0; i < inputs.Length; i++)
{
int result;
if (int.TryParse(inputs[i], out result))
{
// 轉換成功,繼續處理
}
else
{
// 轉換失敗,處理錯誤情況
}
}
StringBuilder
類來減少字符串操作的開銷。string input = Console.ReadLine();
StringBuilder sb = new StringBuilder(input);
for (int i = 0; i < sb.Length; i++)
{
if (!int.TryParse(sb[i].ToString(), out int result))
{
// 轉換失敗,處理錯誤情況
break;
}
// 轉換成功,繼續處理
}