| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1942 人关注过本帖
标题:怎样在运行中输入字符结束循环
只看楼主 加入收藏
未来ken
Rank: 2
等 级:论坛游民
帖 子:102
专家分:96
注 册:2013-11-16
结帖率:85.71%
收藏
已结贴  问题点数:20 回复次数:5 
怎样在运行中输入字符结束循环
程序代码:
#include<stdio.h>
#include <stdlib.h>
int hour,minute,second;
void update()   //刷新时间 
{
    second++;
    if(second == 60)
    {
        second = 0;
        minute++;
    }
    if(minute == 60)
    {
        minute = 0;
        hour++;
    }
    if(hour == 24)
    {
        hour = 0;
    }
}
void display()   //输出时间 
{
    printf("%d:%d:%d\n",hour,minute,second);
}
void delay()   //延时 
{
    int t,s;
    for(t = 0;t<1000;t++)
    {
        for(s = 0;s<200000;s++);
    };
}
int main()
{
    int i; 
    char c;
    int system(const char *string);  //清屏 
    for(i = 0;i<1000000000;i++)
    {
        
        update();
        display();
        delay();
        system("cls");
    }
    return 0;
}

我想在程序运行的时候随便输入一个字符结束运行,得到开始运行到结束运行之间的时间。求大神指教......
搜索更多相关主题的帖子: minute second 
2014-01-24 16:15
未来ken
Rank: 2
等 级:论坛游民
帖 子:102
专家分:96
注 册:2013-11-16
收藏
得分:0 
额int system(const char *string);  //清屏
这句忘记删掉了.....

任重而道远
2014-01-24 16:23
凝思
Rank: 2
等 级:论坛游民
帖 子:1
专家分:14
注 册:2013-12-23
收藏
得分:14 
一边运行一边等待输入
2014-01-24 17:19
未来ken
Rank: 2
等 级:论坛游民
帖 子:102
专家分:96
注 册:2013-11-16
收藏
得分:0 
回复 3楼 凝思
具体怎样操作呢

任重而道远
2014-01-25 10:41
蚕头燕尾
Rank: 10Rank: 10Rank: 10
来 自:Gryffindo
等 级:贵宾
威 望:12
帖 子:734
专家分:1546
注 册:2013-3-24
收藏
得分:0 
首先我不知道你这个程序是想用来干嘛,如果是为了实现功能,请想个更合适的办法;如果是为了练手,倒也无妨。

这里先单就这个代码来讲:

你要的效果是“结束运行”,而非结束计时,可以这样:

#include<stdio.h>
#include <stdlib.h>
#include <conio.h>
int hour,minute,second;

void update()   //刷新时间
{
    second++;
    if(second==60)
    {
        second=0;
        minute++;
    }
    if(minute==60)
    {
        minute=0;
        hour++;
    }
    if(hour==24)
    {
        hour=0;
    }
}

void display()   //输出时间
{
    printf("%d:%d:%d\n",hour,minute,second);
}

void delay()   //延时
{
    int t,s;
    for(t=0;t<1000;t++)
    {
        for(s=0;s<200000;s++)
            ;
    }          //------>这里不用写个分号,当然加个空语句倒也无大妨。
}

int main()
{
    int i;
    char c;
    int system(const char *string);  //清屏
    for(i=0;i<1000000000;i++)
    {
        fflush(stdin);
        if(_kbhit())
            break;
        update();
        display();
        delay();
        system("cls");
    }

    return 0;
}



PS:个人感觉如果按个字符就暂停计时神马的会更好玩一点~


参考:http://zhidao.baidu.com/link?url=9z19Cg7RCxMujWgSH_6I9fOokKhQCAx0T-jr77Nys1LSLEE42WHnN9YvLi8nvojmcUCKc1wcyVYuor46fUul8a



多说一句:有事多问度娘,多问谷歌!虾米都是可以自己解决的~


学习编程,为的是表达自己的思想,而不是被别人的思想所禁锢。要先明白自己想干嘛,而不要先问别人让你干嘛。               

                                                                                                                    Black Cat      Hello Tomorrow~
2014-02-03 11:47
yangt
Rank: 2
等 级:论坛游民
帖 子:49
专家分:20
注 册:2012-11-28
收藏
得分:0 
delay() 加与不加也看不出延迟来呢?
2014-02-04 23:05
快速回复:怎样在运行中输入字符结束循环
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017483 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved