历届真题 时间显示【第十二届】【省赛】【C组】(Java)"/>
蓝桥杯 试题 历届真题 时间显示【第十二届】【省赛】【C组】(Java)
[问题描述]
小蓝要和朋友合作开发--个时间显示的网站。在服务器上,朋友己经获取
了当前的时间,用一个整数表示,值为从1970年1月1日00:00:00 到当前时
刻经过的毫秒数。
现在,小蓝要在客户端显示出这个时间。小蓝不用显示出年月日,只需要
显示出时分秒即可,毫秒也不用显示,直接舍去即可。
给定一个用整数表示的时间,请将这个时间对应的时分秒输出。
[输入格式]
输入一行包含一个整数,表示时间。
[输出格式]
输出时分秒表示的当前时间,格式形如HH:MM:SS,其中HH表示时,值
为0到23,MM表示分,值为0到59,Ss表示秒,值为0到59。时、分、秒
不足两位时补前导0.
[样例输入1]
46800999
[样例输出1]
13:00:00
[样例输入2]
1618708103123
[样例输出2]
01:08:23
[评测用例规模与约定]
对于所有评测用例,给定的时间为不超过1018 的正整数。
代码如下:
import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner sc = new Scanner(System.in);long ms = sc.nextLong();long s = 0;long m = 0;long h = 0;if (ms % 86400000 > 0)//不计算天数,先把天数去掉{s = (ms % 86400000) / 1000;//算出剩余的总秒数h = s / 3600;//计算小时m = s / 60 - h * 60;//计算分钟s = s % 60;//计算秒数}//全部转化为字符串类型拼接成两位数String ss = s + "";String mm = m + "";String hh = h + "";if (s < 10) {ss = "0" + ss;}if (m < 10) {mm = "0" + mm;}if (h < 10) {hh = "0" + hh;}System.out.println(hh + ":" + mm + ":" + ss);}
}
更多推荐
蓝桥杯 试题 历届真题 时间显示【第十二届】【省赛】【C组】(Java)
发布评论