搜索
查看: 4098|回复: 17
打印 上一主题 下一主题

P167两分钟的倒计时该怎么编啊?

[复制链接]
跳转到指定楼层
#
发表于 2013-2-15 23:07:24 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
5啊哈币
这是我自己编的,但感觉很牵强,求正解~!!!不一样的地方能详细解释下更好。
#include <stdio.h>
int main()
{
int a=1,b=59;
    printf("2:00");
    sleep(1000);
    while(a>=0)
   {
   system("cls");
   printf("%d:%.2d",a,b);
   sleep(1000);
   b--;
   if(b<0)
  {
   a--;
   b=59;
  }
   }
sleep(50000);
return 0;
}

17#
发表于 2016-9-7 20:23:00 | 只看该作者
[mw_shl_code=c,true]#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
int main()
{
        int a;
    a=120;//两分钟就是120秒;
    system("color 0a");//改个好看的颜色;
    while(a>=0)//秒倒数到0就停止咯;
    {
                system("cls");//每次循环前不管三七二十一清屏一下;
                printf("%.2d:%.2d",a/60,a%60);//%.2d代表显示两位数,a/60代表分钟,a%60代表秒钟;
                a=a-1;//每次循环秒数减一;
        Sleep(1000);//当然要延迟1秒钟才能循环;
    }
        system("pause");
        return 0;
}
[/mw_shl_code]
16#
发表于 2013-8-15 15:00:15 | 只看该作者
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
int main()
{
        int time=120,minutes,seconds;
    while(time>=0)        /*循环到时间为0*/
        {
                system("cls");
        //hours = (time/3600)%24 ;        //计算小时分钟秒
        minutes =( time / 60)%60 ;        
        seconds = time % 60 ;
        if(seconds<10)
                        printf("%d:0%d",minutes,seconds);
        else
                        printf("%d:%d",minutes,seconds);
        time--;
        Sleep(100) ;        /*暂停1秒*/
     }
    system("pause");
        return 0;
}
15#
发表于 2013-3-15 22:00:24 | 只看该作者
#include <stdio.h>
#include <windows.h>
int main()
{
        int a=120;
    while(a>=0)
    {
                printf("%d:%02d\n",a/60,a%60);
        system("cls");
        a=a-1;
     }
        sleep(5000);
        return 0;
}
14#
发表于 2013-3-3 20:04:20 | 只看该作者
#include <stdio.h>
#include <stdlib.h>
#include<windows.h>
int main()
{int a=1,b=00,c;
printf("%d:%.2d\n",a+1,b);
        for(c=59;a>=00;c--)
    {
   if(c==0){a--;c=59;}
    if(a<0)break;
    Sleep(1000);
    system("cls");
       printf("%d:%.2d\n",a,c);
  }
        system("pause");
        return 0;
}

点评

这个是最简洁的,写的好,赞一个。  发表于 2013-3-5 16:29
13#
发表于 2013-3-3 20:03:46 | 只看该作者
#include <stdio.h>
#include <stdlib.h>
#include<windows.h>
int main()
{int a=1,b=00,c;
printf("%d:%.2d\n",a+1,b);
        for(c=59;a>=00;c--)
    {
   if(c==0){a--;c=59;}
    if(a<0)break;
    Sleep(1000);
    system("cls");
       printf("%d:%.2d\n",a,c);
  }
        system("pause");
        return
12#
发表于 2013-2-27 16:27:18 | 只看该作者
我是0基础的学员,这本书确实很通俗易懂,前两天就看了大半本,但是今天被这一道题难住了一天什么都没看光研究这道题了,思维进入一个死胡同,后来简单的看了下下一节学的while循环嵌套语句,再结合论坛里大家给的千奇百怪的答案(答案虽多但是没有我想要的特别精准的),于是我自己研究了一下用啊哈c编译器一试竟然成功了,现在分享给大家。
#include <stdio.h>
#include <stdlib.h>
int main()
{
        int a,b;
    a=1;
    printf("2:00");
    sleep(500);
    while(a>=0)
    {
                b=59;
        while(b>=0)
        {
                        system("cls");
            
                        if(b<=9)
                                printf("%d:0%d",a,b);
                        else
                                printf("%d:%d",a,b);
                        sleep(500);
            b=b-1;
            
        }
        
        a=a-1;
    }
    sleep(5000);
    return 0;
}
11#
发表于 2013-2-24 22:06:01 | 只看该作者
q1005211955 发表于 2013-2-23 14:34
倒计时不是2:00的格式么?能直接用秒数来代替?

用剩余秒数计算出剩余的分和秒
然后再格式化输出
10#
发表于 2013-2-23 14:34:56 | 只看该作者
thiewrj 发表于 2013-2-19 17:40
我下午的时候看到这道题目也很头疼,开始还想循环嵌套,找时间的显示格式代码,后来发觉走入误区了,直接整 ...

倒计时不是2:00的格式么?能直接用秒数来代替?
9#
发表于 2013-2-21 15:09:33 | 只看该作者
晕死,求代码详解
8#
发表于 2013-2-20 11:38:01 | 只看该作者
rosynirvana 发表于 2013-2-20 11:33
a除以60的余数

哦,谢谢,刚才脑袋打铁了,居然没反应过来。
7#
发表于 2013-2-20 11:33:38 | 只看该作者
zuiyouji1 发表于 2013-2-20 09:52
小白问一下,a%60是什么意思?

a除以60的余数
6#
发表于 2013-2-20 09:52:15 | 只看该作者
thiewrj 发表于 2013-2-19 17:40
我下午的时候看到这道题目也很头疼,开始还想循环嵌套,找时间的显示格式代码,后来发觉走入误区了,直接整 ...

小白问一下,a%60是什么意思?

5#
发表于 2013-2-19 17:40:37 | 只看该作者
我下午的时候看到这道题目也很头疼,开始还想循环嵌套,找时间的显示格式代码,后来发觉走入误区了,直接整除60就可以了。
当然,我提供的只是120秒的。如果想如入多少分的话,直接a=分*60+秒就可以了
地板
发表于 2013-2-19 17:37:01 | 只看该作者
其实很简单的
#include <stdio.h>
int main()
{
        int a=120;
    while(a>=0)
    {
                printf("%d:%02d\n",a/60,a%60);
        system("cls");
        a=a-1;
     }
        sleep(5000);
        return 0;
}
板凳
发表于 2013-2-19 10:39:20 | 只看该作者
咱也有一个[mw_shl_code=c,true]#include <windows.h>                                        //头文件
#include <stdio.h>
#include <stdlib.h>

void show_time(int t_m,int t_s);                //函数原型
int main(void){
        int minutes,seconds;                                //声明两个变量,minutes,seconds
    minutes=2;                                                        //初始化为2分钟
    seconds=59;                                                        //初始化为59秒
   
        while(minutes>=0){
                show_time(minutes,seconds);                        //调用显示时间的函数
        Sleep(1000);
        if(seconds<=0){
                        minutes--;
            seconds=59;
            
        }else{
                        seconds--;
        }
    }
    Sleep(5000);
    return 0;
}

void show_time(int t_m,int t_s){                //定义显示时间的函数
    system("cls");
        printf("%d:%d\n",t_m,t_s);                        //把数据输出到屏幕
}[/mw_shl_code]
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

广播台
特别关注
快速回复 返回顶部 返回列表