c – 嵌套用于具有时间逻辑错误的循环逻辑错误

输出仅显示从7到11:59的时间.它假设从中午到午夜.这是一个逻辑错误,但我无法找到纠正它的方法.

#include <iostream>
using namespace std;
int main ()
{
    int hour,min;

    for (hour=0;hour<=11;hour+=1)
    {    
        for (min=0;min<=59;min++)
        {
            if (min<10)
                cout<<hour<<":"<<"0"<<min<<endl;
            else
                cout<<hour<<":"<<min<<endl;
        }

    }
return 0;
}

最佳答案 Windows控制台默认配置为最多显示300行回滚(输出).

7比12落后5小时,5 * 60 = 300.因此,您(很可能)看到了回滚缓冲区的限制.

增加回滚的大小(右键单击命令提示符图标,选择properties-> layout,将回滚设置为更高的值,如9999),或将输出写入文件.您将看到正确的输出.

点赞