用c语音编写一个程序,计算从1970年1月1日0点开始,经过n秒后的时间(注音:考虑闰年的情况)
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/20 14:31:18
![用c语音编写一个程序,计算从1970年1月1日0点开始,经过n秒后的时间(注音:考虑闰年的情况)](/uploads/image/z/8588720-56-0.jpg?t=%E7%94%A8c%E8%AF%AD%E9%9F%B3%E7%BC%96%E5%86%99%E4%B8%80%E4%B8%AA%E7%A8%8B%E5%BA%8F%2C%E8%AE%A1%E7%AE%97%E4%BB%8E1970%E5%B9%B41%E6%9C%881%E6%97%A50%E7%82%B9%E5%BC%80%E5%A7%8B%2C%E7%BB%8F%E8%BF%87n%E7%A7%92%E5%90%8E%E7%9A%84%E6%97%B6%E9%97%B4%EF%BC%88%E6%B3%A8%E9%9F%B3%EF%BC%9A%E8%80%83%E8%99%91%E9%97%B0%E5%B9%B4%E7%9A%84%E6%83%85%E5%86%B5%EF%BC%89)
用c语音编写一个程序,计算从1970年1月1日0点开始,经过n秒后的时间(注音:考虑闰年的情况)
用c语音编写一个程序,计算从1970年1月1日0点开始,经过n秒后的时间(注音:考虑闰年的情况)
用c语音编写一个程序,计算从1970年1月1日0点开始,经过n秒后的时间(注音:考虑闰年的情况)
void main()
{
long int n;
\x09int y=1970,m=1,d=1,h=0,min=0,s=0;
\x09printf("现在时间已从%d年%d月%d日%2d:%2d:%2d经过了多少秒?\n",y,m,d,h,min,s);
scanf("%d",&n);
\x09while(n--)
{
s++;
if(s==60)//计时到60s
{
s=0;
min++;
if(min==60)//计时到60min
{
min=0;
h++;
if(h==24)//计时到24h
{
h=0;
d++;
switch(d)//计时到29或30或31或32天
{
\x09\x09\x09\x09\x09\x09case 29:
\x09\x09\x09\x09\x09\x09\x09if(m==2&&!(y%4==0&&(y%100!=0||y%400==0)))//不是闰年的2月
{
d=1;
m++;
\x09\x09\x09\x09\x09\x09}
break;
case 30:
\x09\x09\x09\x09\x09\x09if(m==2&&(y%4==0&&(y%100!=0||y%400==0)))//是闰年的2月
\x09\x09\x09\x09\x09\x09{
\x09\x09\x09\x09\x09\x09\x09d=1;
\x09\x09\x09\x09\x09\x09\x09m++;
\x09\x09\x09\x09\x09\x09}
\x09\x09\x09\x09\x09\x09break;
case 31:
\x09\x09\x09\x09\x09\x09if(m==4||m==6||m==9||m==11)//是4、6、9、11月,小月,一个月30天
\x09\x09\x09\x09\x09\x09{
\x09\x09\x09\x09\x09\x09\x09d=1;
\x09\x09\x09\x09\x09\x09\x09m++;
\x09\x09\x09\x09\x09\x09}
\x09\x09\x09\x09\x09\x09break;
\x09\x09\x09\x09\x09\x09case 32://是1、3、5、7、8、10、12月,大月,一个月31天
\x09\x09\x09\x09\x09\x09d=1;
\x09\x09\x09\x09\x09\x09m++;
\x09\x09\x09\x09\x09\x09if(m==13)
\x09\x09\x09\x09\x09\x09\x09{
\x09\x09\x09\x09\x09\x09\x09\x09m=1;
\x09\x09\x09\x09\x09\x09\x09\x09y++;
\x09\x09\x09\x09\x09\x09\x09}
\x09\x09\x09\x09\x09\x09break;
default:break;
}
}
}
}
}
\x09printf("现在时间是%d年%d月%d日%2d:%2d:%2d\n",y,m,d,h,min,s);
}