rehtafruoymi 2019-04-24 22:54 采纳率: 66.7%
浏览 377

2分钟的倒计时秒表 不正常

运行结果 2:00一次,后面 1:00 1:00 1:00循环,没有1:59
#include
#include
#include
int main()
{
int a,b;
a=120;b=a%60;
while(a>=0)

{   

    if(b>=0 && b<10)
    {
            system("cls");
    printf("%d:0%d",a/60,b);
    Sleep(1000);
    }
    else
    {
            system("cls");
    printf("%d:%d",a/60,b);
    Sleep(1000);
    }
a=a-1;    
}
system("pause");
return 0;

}

如果,我不要b,直接将a%60代入,倒是正常了。
如果我删掉中间的判断条件,剩下
system("cls");
printf("%d:0%d",a/60,b);
Sleep(1000);
也是一样的不正常。说明不是判断条件导致错误的。而是b和a%60的关系,b=a%60。a=120;b=a%60;即b=0?
额,提问到这里,已找到答案。

问题出在b=a%60;
放错位置了,放这里,b的值就是固定的了,但它是个变量。
然后我把它放while下面花括号里了,运行正常了。

  • 写回答

1条回答 默认 最新

  • rehtafruoymi 2019-04-24 22:54
    关注

    问题已找到,如上所说,b=a%60;位置放错。

    评论

报告相同问题?

悬赏问题

  • ¥100 求数学坐标画圆以及直线的算法
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考
  • ¥15 名为“Product”的列已属于此 DataTable
  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 自己瞎改改,结果现在又运行不了了
  • ¥15 链式存储应该如何解决
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站