使用Java语言来现实
关键语句:System.currentTimeMillis();
获得从1970年1月1日凌晨零点以来总共过了多少毫秒,请看以下代码及详细注释:
//显示当前的时间
public class ShowCurrentTime {
public static void main(String args[]){
//obtain the total milliseconds since midnight, Jan 1, 1970
//获得从1970年1月1日凌晨零点以来总共过了多少毫秒
long totalMilliseconds = System.currentTimeMillis();
//obtain the total seconds since midnight, Jan 1, 1970
//获得从1970年1月1日以来总共过了多少秒
long totalSeconds = totalMilliseconds / 1000;
//Compute the current second in the minute in the hour
//计算当前小时和分钟下的秒数
long currentSecond = totalSeconds % 60; //总秒数除以60取余数
//obtain the total minutes
//获得总分钟数
long totalMinutes = totalSeconds / 60; //总秒数除以60取整得到总分钟数
//Compute the current minute in the hour
//计算当前小时下的分钟数
long currentMinute = totalMinutes % 60; //总分钟数除以60取余数得到当前小时下的分钟
//obtain the total hours
//获得总小时数
long totalHours = totalMinutes / 60; //总小时数除以60取整得到总小时数
//Compute the current hour
//计算当前小时
long currentHour = totalHours % 24 + 8; //总小时数除以24取余数,加8得到北京时间
//Display results
System.out.println("Current time:"+ currentHour +":"+ currentMinute +":"+ currentSecond);
}
}
使用C语言来实现
关键语句time(0)
获得从1970年1月1日凌晨零点以来总共过了多少秒,请看以下代码及详细注释:
#include <stdio.h>
#include <time.h>
int main()
{
long seconds = time(0);//获得从1970年1月1日以来总共过了多少秒
long currentSec = seconds % 60;//获得当前小时分钟下的秒数
long minutes = seconds / 60;//获得总分钟数
long currentMin = minutes % 60;//获得当前小时下的分钟
long hours = minutes / 60;//总小时数
long currentHour = hours % 24 + 8;//当前北京时间小时
printf("现在是北京时间:%ld:%ld:%ld",currentHour,currentMin,currentSec);
return 0;
}
扩展资料GMT
GMT:Greenwich Mean Time,格林尼治时间,又名世界时。起始点为1970年1月1日凌晨0点。格林尼治时间加8小时可以获得北京时间。不同的时区要在格林尼治时间的基础上做一些相应的处理
C语言实现显示实时秒数
上面的那个代码只是打印一次,显示的秒数是运行时的秒数,那么如何实现动态打印,不断更新后面的秒数呢?请看如下代码:
#include <stdio.h>
#include <stdlib.h> //system("cls"); 清屏函数包含在该头文件中
#include <time.h>
int main()
{
while(1) //while(1)判断条件永远为真,一直进行打印
{
long seconds = time(0);//获得从1970年1月1日以来总共过了多少秒
long currentSec = seconds % 60;//获得当前小时分钟下的秒数
long minutes = seconds / 60;//获得总分钟数
long currentMin = minutes % 60;//获得当前小时下的分钟
long hours = minutes / 60;//总小时数
long currentHour = hours % 24 + 8;//当前北京时间小时
printf("现在是北京时间:%ld:%ld:%ld",currentHour,currentMin,currentSec);
system("cls"); //每次打印都将上一次打印的结果清理掉,重新打印当前的秒数
}
return 0;
}