我会使用带格式说明符的插值字符串。通过在字符串前面加上美元符号,您向编译器发出信号,表明该字符串包含需要替换的大括号内的变量。格式说明符说“显示到小数点后两位”(代表浮点数)。您应该查找标准和自定义数字格式说明符。${}F2F
请注意,我double.TryParse用来解释用户的输入 - 如果它是错误的,我会给他/她另一个机会。如果您使用double.Parse或Convert.ToDouble执行此操作,则不正确的条目将导致抛出异常。用户以不正确的格式输入信息几乎不是例外情况,因此应尽可能避免例外情况。该调用用 a而不是异常TryParse发出错误信号。bool
double radius;
string responseFromUser;
do
{
Console.Write("Enter the radius for a circle: ");
responseFromUser = Console.ReadLine();
} while (!double.TryParse(responseFromUser, out radius));
double diameter = 2 * radius;
double circumference = Convert.ToDouble(Math.PI * diameter);
Console.WriteLine($"{Environment.NewLine}The radius of the circle is {radius:F2} units.");
Console.WriteLine($"The diameter of the circle is {diameter:F2} units.");
Console.WriteLine($"The circumference of the circle is {circumference:F2} units.");
Console.Write($"{Environment.NewLine}Press any key to continue...");
Console.ReadKey();
输出如下所示:
Enter the radius for a circle: abc
Enter the radius for a circle: 12.333
The radius of the circle is 12.33 units.
The diameter of the circle is 24.67 units.
The circumference of the circle is 77.49 units.
Press any key to continue...
如果您输入的内容少于两个小数点,您仍然会得到两个小数点:
Enter the radius for a circle: 4
The radius of the circle is 4.00 units.
The diameter of the circle is 8.00 units.
The circumference of the circle is 25.13 units.
Press any key to continue...