CNET中国旗舰网站

ZDNet China | CNET科技资讯网 | 政府采购 | 行业网站联盟





 
标题: [讨论] 用C语言编出2008年北京奥运会倒计时,天天.时时.分分.秒秒?
ZML8210
支柱会员
Rank: 10Rank: 10Rank: 10



UID 319249
精华 6
积分 18046
帖子 1388
威望 8330
ZD币 2826 元
阅读权限 210
注册 2008-4-15
状态 离线
  楼主
发表于 2008-5-27 17:26  资料  个人空间  短消息  加为好友 
开发者在线

用C语言编出2008年北京奥运会倒计时,天天.时时.分分.秒秒?

想了半天,不知道从何处入手。大家帮忙提示点思路咯!
不知道利用死循环能能编出来?

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <string.h>

int i_sleep(int n)//延迟n秒函数
{
    time_t start,end;
    start=time(NULL);
    end=time(NULL);
    while(end-start<n)
    {
        end=time(NULL);
    }
    return 0;
}

int showtime()
{
        struct tm timestru,*tmtime;
        time_t endtime, curtime;
        long ttime;

        timestru.tm_year = 2008 - 1900;
        timestru.tm_mon = 8 - 1;         
        timestru.tm_mday = 8;        
        timestru.tm_hour = 20;
        timestru.tm_min = 0;
        timestru.tm_sec = 0;
      
        endtime = mktime(&timestru);
        curtime = time(NULL);
        ttime = endtime - curtime;
        tmtime = localtime(&curtime);
      
        printf("\n\n\n");
        printf("\t\t ———————————————————————— \n");
        printf("\t\t|        2008北京奥运倒计时       |\n");
        printf("\t\t|———————————————————————|\n");
        printf("\t\t|     当前时间 %04d年%02d月%02d日 %02d时%02d分%02d秒     |\n",
                tmtime->tm_year + 1900, tmtime->tm_mon + 1, tmtime->tm_mday ,
                tmtime->tm_hour, tmtime->tm_min, tmtime->tm_sec);
        printf("\t\t|———————————————————————|\n");
        printf("\t\t|    距北京奥运 %04d年%02d月%02d日 %02d时%02d分%02d秒    |\n",
                timestru.tm_year + 1900, timestru.tm_mon + 1, timestru.tm_mday,
                timestru.tm_hour, timestru.tm_min, timestru.tm_sec);
        printf("\t\t|———————————————————————|\n");      
        printf("\t\t|           还有%3d天%02d时%02d分%02d秒              |\n",
                ttime/86400, ttime%86400/3600, ttime%86400%3600/60, ttime%86400%3600%60);
        printf("\t\t ———————————————————————— \n\t\t");
      
        return 0;        
}

int main(int argc, char *argv[])
{
        while(1)
        {
                system("cls");
                showtime();
                i_sleep(1);
        }
        return 0;
}

结果:


以下是我找的程序,有一处错误!请高手帮忙解决了!
题目在以下附件里:




顶部
热点频道推荐: C/S开发| 数据库| WEB开发| 嵌入式| 项目管理|
fdc9643
版主
Rank: 7Rank: 7Rank: 7


UID 319152
精华 8
积分 24172
帖子 1756
威望 10950
ZD币 4001 元
阅读权限 250
注册 2008-4-15
状态 离线
  沙发
发表于 2008-5-27 17:30  资料  个人空间  短消息  加为好友 
我也想编这个,搞不定




顶部
热点频道推荐: C/S开发| 数据库| WEB开发| 嵌入式| 项目管理|
 



当前时区 GMT+8, 现在时间是 2009-7-4 17:03

  Powered by Discuz! 5.5.0 © 2001-2007 Comsenz Inc.
Processed in 0.067994 second(s), 4/3 queries

清除 Cookies - 联系我们 - ZDNetChina中文社区 - 无图版