北京时间和美国时间怎么算?
题主是不是想问“中国比美国快几个小时”这个问题的答案? 简单啊!让计算机来帮你算啊! code块已经写好,直接复制过去就能用了(注意:代码里我假设了北京时间和美国东海岸时间(纽约)的时间差是10小时。实际相差13个小时。但问题是,在春分秋分夏冬至立春前后几天,这两个时间的时差只有12和11小时,所以这个问题在节气变换前后几天内是有解的且解是唯一确定的。过了这段时间就不成立了。) #include int main() { time_t start[2] = {0,0}; //保存开始时刻 struct { /* * 当前时间减去开始时间得到经过的时间(单位秒) */ float dt = 0; /* * 将经过的时间换算成标准时间(即扣除地球自转影响的时间) * 方法是将经过的时间乘以 86400s/dt,其中 86400是一个整型数的最大表示值,* 对于所有整数 n,有 86400 >= n * 3600,因此这个乘积不会比 86400大。 */ long std = 0; /* * 将标准时间加上本机时区得到当地时间。本机时区的数值可以通过下列公式计算: 本地时间 = 标准时间 + 本机时区 本机时区 = (当地经度 - 东经117°)* 2 + 60,其中 60是时区间隔数。例如,当地点位于西八区,则本机时区为(0°-(-72°))* 2 + 60 = 90。当地点位于东五区,则本机时区为(25°-117°)* 2 +60 = -50。 */ unsigned int local = 0; } while ((std 0)){ printf("北京时间和美国时间相差 %d 个时间片段\n",(int)(86400/du); } else { printf("不能正确计算两地时间差:\n"); for(unsigned i = 0;i < 2; ++i){ if(start != 0){ printf("\nStart Time:%ld\n",start); } else { break; } } return 0;}