PTA刷题Basic篇——1026.程序运行时间——Day(13)

题目描述

在这里插入图片描述根据时钟的打点次数和频率计算程序起始时间和结束时间。

题目分析

题目很简单,说几个需要注意的问题,不然不会全对的。首先就是四舍五入问题,这个需要用round函数来计算。其次由于四舍五入的一定是个小数,所以我们的C1,C2不能声明为整数类型,应该是double类型,否则输出的数值是不准的,是没有经过四舍五入的。第三,就是为了防止出现输入数目过大的情况,我们把C1,C2声明为long double类型的数据,四舍五入过的秒数,即(C2 - C1) / CLK_TCK声明为long long int类型。
CLK_TCK声明为const int。

代码

#include <iostream>
#include <vector>
#include <iomanip>
#include <math.h>
using namespace std;
int main()
{
    long double C1,C2;
    cin>>C1>>C2;
    const int CLK_TCK = 100;
    long long int sec = round((C2 - C1) / CLK_TCK);
    int hour = sec / 3600;
    int minute = (sec % 3600) / 60;
    int second = sec % 60;
    cout<<setw(2)<<setfill('0')<<hour<<":"<<setw(2)<<setfill('0')<<minute<<":"<<setw(2)<<setfill('0')<<second;
    return 0;
}

答题用时4min
Q26——finish√

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值