java蓝桥杯省赛时间显示

在这里插入图片描述

答案为:

import java.util.Scanner;


public class Main {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        long n = scan.nextLong();//考虑到我们输入的数要到10的18次,所以使用long
        n = n/1000;//因为题目要求是精确到秒,但输入的是毫秒,则/1000
        n = n%(24*60*60);//取余一天的时间相当于只是去看一天的时间
        long hour = n/60/60;//除以一小时的秒数剩下的就是小时数
        long minute = n/60%60;//先除以一分钟的秒数,便为分钟数,但我们需要的是最后剩下的那一小时的剩下的分钟数,则%60
        long second = n%60;//同上分钟
        System.out.printf("%02d:%02d:%02d",hour,minute,second);//格式化输出日期
    }
}`

最后忘记加个:scan.close();

关于printf输出日期格式的方法可以看一下下面:

这里是引用printf的常用格式控制:

% 0m.n格式字符

下面对组成格式说明的各项加以说明:

① % 格式说明的起始符号,不可缺少。

② 0 有0表示指定空位填0,如省略表示指定空位不填。

③ m.n m指域宽,即对应的输出项在输出设备上所占的字符数。n指精度。用于说明输出的实型数的小数位数。为指定n时,隐含的精度为n=6位。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值