搜索
查看: 1155|回复: 1
打印 上一主题 下一主题

【第四章第5节】 题解问题求助

[复制链接]
跳转到指定楼层
楼主
发表于 2013-8-12 11:22:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
请尝试编写一个 2 分钟的倒计时。形如:2:00 1:59 1:58 ……
1:00 0:59 0:58 …… 0:02 0:01 0:00


我写的程序

#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
int main()
{
        int a,b;
    a=59,b=1;
    printf("2:00");
    //sleep(1000);           如果不取消这行,程序无法运行,说编译失败
    while(a>=0)
   {
     system("cls");
     printf("%d" ":" "%d",b,a);
     Sleep(1000);
     a=a-1;
   }
    a=59,b=0;
    while(a>=0)
   {
     system("cls");
     printf("%d" ":" "%d",b,a);
     Sleep(1000);
     a=a-1;
   }   
    // system("beep");
         system("pause");
        return 0;
}


程序能正常运行,这里有2个问题
一个是 2:00 这个我放在第一行,但没有显示
二个是 1:09 1:08 1:07......这些中间的0并没有显示
这2个问题如何才能更正呢?
沙发
发表于 2013-8-18 23:56:30 | 只看该作者
本帖最后由 李掌柜 于 2013-8-18 23:59 编辑
  1. //在a小于10的时候用0补上,哇卡卡代码如下!


  2. #include <stdio.h>
  3. #include <stdlib.h>
  4. #include <windows.h>
  5. int main()
  6. {
  7.         int a,b,c;
  8.     a=59,b=1,c=0;
  9.     printf("2:00");
  10.     //sleep(1000);           如果不取消这行,程序无法运行,说编译失败
  11.     while(a>=0)
  12.    {
  13.      system("cls");
  14.    
  15.      printf("%2d" ":" "%2d",b,a);
  16.      if(a<10)
  17.      printf("\b\b%d",c);
  18.      Sleep(1000);
  19.      a=a-1;
  20.    }
  21.     a=59,b=0;
  22.     while(a>=0)
  23.    {
  24.      system("cls");


  25.      printf("%2d" ":" "%2d""%",b,a);
  26.      if(a<10)
  27.      printf("\b\b%d",c);
  28.      Sleep(1000);
  29.      a=a-1;
  30.    }   
  31.     // system("beep");
  32.     system("pause");
  33.     return 0;
  34. }
复制代码
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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