ZZULIOJ-1095: 时间间隔(多实例测试)(Java)

简介: ZZULIOJ-1095: 时间间隔(多实例测试)(Java)

题目描述:


从键盘输入两个时间点(24小时制),输出两个时间点之间的时间间隔,时间间隔用“小时:分钟:秒”表示。要求程序定义如下两个函数,并在main()中调用这两个函数实现相应的功能,其中main函数系统已经实现,你只需要完成下面这两个函数的定义。

int HmsToS(int h, int m, int s)     // 三个参数分别为用于表示一个时间点的时、分、秒

{

         //把时分秒转换成秒并返回。

}

void PrintTime(int s);     //形参s表示一个时间段的长度,单位是秒

{

         //将时间段转换为对应的“小时:分钟:秒” 格式输出

}  


对于C/C++代码的提交,本题只需要提交HmsToS函数和PrintTime函数的定义部分,否则,提交编译错误。


输入:


输入数据有多组。每组输入包括两行。第一行为时间点1,第二行为时间点2,时间点均以“HH:MM:SS”的格式输入。测试数据保证时间点1早于时间点2。  


输出:



对应每组数据,有一行输出,以“HH:MM:SS”的格式输出时间间隔。注意不足两位要补占位符0。格式参看输入输出。


样例输入:


12:01:12

13:09:43

12:40:12

13:09:43


样例输出:


01:08:31

00:29:31


程序代码:



import java.util.*;
public class Main
{
  public static void main(String[] args)
  {
    Scanner input=new Scanner(System.in);
    while(input.hasNext())
    {
      String s1=input.nextLine();
      String s2=input.nextLine();
      String a1[]=s1.split(":");//将字符串之间从“:”分离开
      int x1=Integer.parseInt(a1[0]);//依次获取,并将其转化成int类型的整数
      int y1=Integer.parseInt(a1[1]);
      int z1=Integer.parseInt(a1[2]);
      String a2[]=s2.split(":");
      int x2=Integer.parseInt(a2[0]);
      int y2=Integer.parseInt(a2[1]);
      int z2=Integer.parseInt(a2[2]);
      int m=(x2*3600+y2*60+z2)-(x1*3600+y1*60+z1);
      int d1=m/3600;
      int d2=(m-d1*3600)/60;
      int d3=m-d1*3600-d2*60;
      System.out.printf("%02d:%02d:%02d\n",d1,d2,d3);
    }
    input.close();
  }
}


相关文章
|
30天前
|
Java 测试技术 API
Java 新手入门:Java单元测试利器,Mock详解
Java 新手入门:Java单元测试利器,Mock详解
73 1
|
23天前
|
Java
【Java基础面试七】、请介绍一下实例变量的默认值
这篇文章介绍了Java中实例变量的默认值:引用数据类型的默认值是null,而基本数据类型的默认值根据其类型分别是0、0L、0.0F、0.0、'\u0000'和false。
【Java基础面试七】、请介绍一下实例变量的默认值
|
13天前
|
IDE Java 测试技术
揭秘Java高效编程:测试与调试实战策略,让你代码质量飞跃,职场竞争力飙升!
【8月更文挑战第30天】在软件开发中,测试与调试对确保代码质量至关重要。本文通过对比单元测试、集成测试、调试技巧及静态代码分析,探讨了多种实用的Java测试与调试策略。JUnit和Mockito分别用于单元测试与集成测试,有助于提前发现错误并提高代码可维护性;Eclipse和IntelliJ IDEA内置调试器则能快速定位问题;Checkstyle和PMD等工具则通过静态代码分析发现潜在问题。综合运用这些策略,可显著提升代码质量,为项目成功打下坚实基础。
33 2
|
16天前
|
Java 应用服务中间件 HSF
Java应用结构规范问题之AllLoggers接口获取异常日志的Logger实例的问题如何解决
Java应用结构规范问题之AllLoggers接口获取异常日志的Logger实例的问题如何解决
|
21天前
|
XML Java 测试技术
Selenium WebDriver自动化测试(基础篇):不得不掌握的Java基础
关于Selenium WebDriver自动化测试的Java基础篇,涵盖了Java的变量、数据类型、字符串操作、运算符、流程控制、面向对象编程、关键字用法、权限修饰符、异常处理和IO流等基础知识点,为进行自动化测试提供了必要的Java语言基础。
18 1
|
1月前
|
存储 Java 程序员
08 Java面向对象基础(对象与类+实例变量与方法+构造方法+this关键字)
08 Java面向对象基础(对象与类+实例变量与方法+构造方法+this关键字)
59 4
|
12天前
|
算法 Java 开发者
你的Java代码还可以这样写:JavaIO的简单代码实例和展示
在编程世界中,Java无疑是璀璨的明星。本文通过两个示例介绍抽象类与接口的魅力:首先,通过抽象类`Shape`及其子类`Circle`和`Rectangle`展示多态性;接着,通过接口`PerimeterCalculator`为形状类添加周长计算功能,展现了接口的灵活性。掌握这两者将助你在Java编程中更进一步,应对复杂项目游刃有余。
29 0
|
18天前
|
Java 测试技术 API
SpringBoot单元测试快速写法问题之创建 PorkInst 实例如何解决
SpringBoot单元测试快速写法问题之创建 PorkInst 实例如何解决
|
28天前
|
Java 测试技术
Java SpringBoot Test 单元测试中包括多线程时,没跑完就结束了
Java SpringBoot Test 单元测试中包括多线程时,没跑完就结束了
23 0
|
28天前
|
缓存 Java
Java本地高性能缓存实践问题之创建一个AsyncCache实例的问题如何解决
Java本地高性能缓存实践问题之创建一个AsyncCache实例的问题如何解决