• 关于输出较长 行数较多的结果不能全部显示 屏幕缓存区问题


    这是我自己根据书上的思路自己编写的具体代码 求2000-2500的闰年
    原本没有这一句: else printf("%d不是闰年 ",a);
    一切正常,但是当加了这一句,点击允许,直接显示如图不是从2000开始的,而是2205,这是为什么如果不加《
    else printf("%d不是闰年 ",a);》,是一切正常的。

    具体代码:
    #include<stdio.h>
    int main (void)
    {
    int a=2000;

    while(a<=2500)
    {
    if(
    a%4==0&&a%100!=0
    ||

    a%100==0&&a%400==0
    )
    printf("闰年是%d ",a);
    else
    printf("%d不是闰年 ",a);
    a++;
    }
    return 0;

    }

    运行后为什么是从2205开始的呢?前面的2000至2204呢?
    个人没从代码找出问题啊

    这是因为 屏幕缓存不够了,要设置大一点

    ————————————————————————————————————————————————————————————————

    应急办法 有个应急的办法就是在头文件中加个 #include<Windows.h>

    然后在main函数中添加下面这一段

    SMALL_RECT winPon={0,0,200,100}; /*初始化大小*/

    HANDLE con=GetStdHandle(STD_OUTPUT_HANDLE); COORD buf={200,700}; /*缓冲区宽度和长度,700就是那个高度的缓冲,这样就够用了应该*/ SetConsoleWindowInfo(con,1,&winPon);

    SetConsoleScreenBufferSize(con,buf);

    或者在弹出的显示框上右键 默认值  布局  把高度改为500以上,如果不够继续增加

    最后成果

    正常从2000开始了

  • 相关阅读:
    [UWP]实现Picker控件
    [UWP]合体姿势不对的HeaderedContentControl
    [UWP]新控件ColorPicker
    [UWP]使用Acrylic(亚克力)
    [UWP]使用Reveal
    [工具]我怎么使用思维导图
    python数据分析师面试题选
    R %operator% 含义
    R中将list类型数据转换成data.frame型
    用R在字符串中提取匹配的部分
  • 原文地址:https://www.cnblogs.com/taoyuan7788/p/3185112.html
Copyright © 2020-2023  润新知