题目描述:

要获得一个 C 语言程序的运行时间,常用的方法是调用头文件 time.h,其中提供了 clock() 函数,可以捕捉从程序开始运行到 clock() 被调用时所耗费的时间。这个时间单位是 clock tick,即“时钟打点”。同时还有一个常数 CLK_TCK,给出了机器时钟每秒所走的时钟打点数。于是为了获得一个函数 f 的运行时间,我们只要在调用 f 之前先调用 clock(),获得一个时钟打点数 C1;在 f 执行完成后再调用 clock(),获得另一个时钟打点数 C2;两次获得的时钟打点数之差 (C2-C1) 就是 f 运行所消耗的时钟打点数,再除以常数 CLK_TCK,就得到了以秒为单位的运行时间。
这里不妨简单假设常数 CLK_TCK 为 100。现给定被测函数前后两次获得的时钟打点数,请你给出被测函数运行的时间。

输入格式:

输入在一行中顺序给出 2 个整数 C1 和 C2。注意两次获得的时钟打点数肯定不相同,即 C1 < C2,并且取值在 [0,

]。

输出格式:

在一行中输出被测函数运行的时间。运行时间必须按照 hh:mm:ss(即2位的 时:分:秒)格式输出;不足 1 秒的时间四舍五入到秒。

输入样例:

123 4577973

输出样例:

12:42:59



解题思路:

题目要求省略调用clock()函数取得取得时间,而是自己输入时间点。

这样直接简化了问题。

本题主要考察对秒转换为时:分:秒。

时间差:Total=C2-C1

手动四舍五入

    if (Total%100>=50) Total=Total/100+1;else Total=Total/100;

时分秒的获得方法:

时:Total/3600

分:Total%3600/60

秒:Total%60

解题步骤:

1.输入C1、C2时间点,计算时间差

#include <stdio.h>int main(){int C1,C2;scanf("%d%d",&C1,&C2);int Total=(C2-C1);return 0;}

2.将不足 1 秒的时间四舍五入到秒

    if (Total%100>=50) Total=Total/100+1;else Total=Total/100;

3.按hh:mm:ss输出

printf("%02d:%02d:%02dn", Total / 3600, Total % 3600 /60, Total % 60);



编译器

C(gcc)

完整代码

#include <stdio.h>int main(){int C1,C2;scanf("%d%d",&C1,&C2);int Total=(C2-C1);if (Total%100>=50) Total=Total/100+1;else Total=Total/100;printf("%02d:%02d:%02dn", Total / 3600, Total % 3600 /60, Total % 60);return 0;}

运行截图

运行截图

提交结果

答案正确

Nice!Nice!Nice!

搞定!

clock函数的时间单位_PAT B1026:程序运行时间相关推荐

  1. clock函数的时间单位_【CUDA 基础】2.2 核函数计时

    Abstract: 本文介绍CUDA核函数计时方法Keywords: gettimeofday,nvprof 开篇废话 继续更新CUDA,同时概率和数学分析也在更新,欢迎大家访问www.face2ai ...

  2. C++入门 PAT乙级B1026 程序运行时间

    C++入门 PAT乙级B1026 程序运行时间 题目描述 要获得一个 C 语言程序的运行时间,常用的方法是调用头文件 time.h,其中提供了 clock() 函数,可以捕捉从程序开始运行到 cloc ...

  3. Python time 模块time 函数的时间单位

    Python 中time 模块下的time 常用于计算函数运行的时间 import time starttime = time.time() xxx endtime = time.time() pri ...

  4. PAT [B1026 程序运行时间] C语言

    要获得一个 C 语言程序的运行时间,常用的方法是调用头文件 time.h,其中提供了 clock() 函数,可以捕捉从程序开始运行到 clock() 被调用时所耗费的时间.这个时间单位是 clock ...

  5. linux 改成utc时间_C++下四种常用的程序运行时间的计时方法总结

    记录下当前时间start,调用程序fun(),再记录一下时间end. 前后时间一减(start-end)就得到程序的运行时间了. 首先介绍最常用的,但两种精度不是很高(>=10ms)的方法:cl ...

  6. C++里的clock()函数介绍

    文章目录 问题描述 解决方案 CODE 函数介绍 问题描述 判断一个算法的好坏,不但与算法的空间复杂度和巧妙有关,还和算法的时间复杂度有关.于是问题来了如何用数据表明算法的时间复杂度优劣呢? 解决方案 ...

  7. (C语言)clock()函数的基本使用

    先简单介绍下clock()函数: 1.直接去这个网址看,写的很全面而且c语言标准库函数他都有 clock - C++ Reference 网址主页:www.cpluspluc.com 2.我口头介绍下 ...

  8. java 测量程序运行时间

    主类 测量运行时间 public class Time {public void test1() { // --第一种是以毫秒为单位计算的. long startTime=System.current ...

  9. Java计算两个程序运行时间

    一.获取系统当前时间 long startTime = System.currentTimeMillis(); //获取开始时间 doSomething(); //测试的代码段long endTime ...

最新文章

  1. linux环境下c回车,linux_C 让 getchar()不再需要回车
  2. java linux解压_linux整套java环境解压版
  3. openstack常用运维命令_运维人员常用的Linux命令汇总
  4. 【前端】【element】el-progress组件使用文档补充——大小调整与数字颜色
  5. PYPL 1 月 IDE 榜单:Visual Studio Code 猛追 IntelliJ
  6. 2D Fast Marching Computations
  7. cuteEditor6.0多语言版(集成lic文件)
  8. C++ std::shared_ptr是什么意思
  9. MPB:遗传发育所刘永鑫等-易扩增子:易用、可重复和跨平台的扩增子分析流程...
  10. python dataframe isin,使用多个条件获取新的数据帧pd.Dataframe.isin()
  11. 腾讯云创建二级域名并解析
  12. Android OpenCV (五十九):离散傅里叶变换
  13. 查看Window系统激活信息
  14. 20201124 fpga程序的下载
  15. ClickHouse正则匹配内网IP
  16. 第二周 Turtle库的使用
  17. MySQL对 DROP TABLE 处理过程(转自老金)
  18. 传统武式太极拳练习五阶段
  19. Java顶级大神的面试经验,竟如此超越常理
  20. Android Studio 启动问题(does not point to a valid jvm installation)

热门文章

  1. 基于JAVA+SpringMVC+Mybatis+MYSQL的酒店预订系统
  2. golang Java_goLang
  3. shell 脚本 简易for循环 脚本
  4. noip2017day2
  5. 关于Android中的SlidingMenu中的用法
  6. Linux下Zend Framework的“Invalid Controller Specified”问题
  7. 我最大的乐趣是不厌其烦地收集人生的各种经历和体验。我喜欢享受人生的各种经历和体验所带给我的难以言表的乐趣...
  8. android html拦截广告,广告见鬼去!两招让安卓告别网页广告
  9. cordic ip核 vivado_vivado中Cordic IP核使用——计算正余弦(sin/cos)
  10. Python之数据分析(生成动态图像、示波器效果)