提示用户以秒为单位输入时间,然后以分钟和秒显示

时间:2017-10-27 21:05:55

标签: c# time

//到目前为止我做了什么

int seconds, minutes;

Console.Write("Seconds: ");
seconds = int.Parse(Console.ReadLine());

minutes = seconds / 60;
seconds = seconds % 60;

Console.ReadLine();

3 个答案:

答案 0 :(得分:4)

好像你只需要在ReadLine之前将结果输出到控制台:

Console.Write("Enter the number of seconds: ");
int totalSeconds = int.Parse(Console.ReadLine());
int minutes = totalSeconds / 60;
int seconds = totalSeconds % 60;

// You're missing this line:
Console.WriteLine($"{totalSeconds} seconds = {minutes} minutes and {seconds} seconds");

Console.Write("\nPress any key to exit...");
Console.ReadKey();

另外,您知道,有一个System.TimeSpan类将为您进行这些计算。您可以使用静态方法FromSeconds()(还有其他人,如FromDaysFromHoursFromMinutes等)创建它,然后您可以访问{{1}等属性}或TotalSeconds

Seconds

答案 1 :(得分:0)

对于未来,我建议尝试谷歌这样简单的事情。

Console.WriteLine(minutes + " minutes & " + seconds + " seconds");

答案 2 :(得分:0)

使用int totalSeconds = int.Parse(Console.ReadLine());时,Rufus L的答案很准确。用户可以输入字符,控制台应用程序也会崩溃。

你可以添加try catch bloc来防止这种情况:

try {
    int totalSeconds = int.Parse(Console.ReadLine());
}
catch (FormatException) {
    Console.WriteLine("The entered number is invalid.");
}

有更好的方法可以使用循环来允许用户再次键入。 根据解析是否成功,查看返回布尔值的Int.TryParse(...)