码迷,mamicode.com
首页 > 其他好文 > 详细

[刷题]

时间:2020-10-22 22:44:15      阅读:21      评论:0      收藏:0      [点我收藏+]

标签:lap   格式   include   程序   using   输出   整数   四舍五入   时钟   

要求

  • 给定被测函数前后两次获得的时钟打点数,给出被测函数运行的时间

样例

  • 输入样例: 123 4577973
  • 输出样例: 12:42:59

思路

  • n表示运行的时间,n为(b-a)/100,因为常数CLK_TCK为100
  • 题目要求不足1秒的时间四舍五入到秒,所以先给(b-a)加上50,这样如果(b-a)/100的小数位大于等于0.5则会进位,小于等于0.5则会舍去,所以n = ((b – a) + 50) / 100
  • 因为要把秒数n化为时:分:秒的格式,一小时等于3600秒,所以hour = n / 3600,此时将n % 3600即为剩下的分钟和秒数;因为一分钟等于60秒,所以minute = n / 60,则n % 60剩下的就是秒
  • 最后用printf的%02d格式自动为不足2位的整数在前面补上0,保证能够按照格式输出

程序

#include <iostream>
using namespace std;
int main() {
    int a, b;
    cin >> a >> b;
    int n = ((b - a) + 50) / 100;
    int hour = n / 3600;
    n = n % 3600;
    int minute = n / 60, second = n % 60;
    printf("%02d:%02d:%02d", hour, minute, second);
    return 0;
}

  

 

[刷题]

标签:lap   格式   include   程序   using   输出   整数   四舍五入   时钟   

原文地址:https://www.cnblogs.com/cxc1357/p/13857245.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!