【问题标题】:How do I print more than 300 lines?如何打印超过 300 行?
【发布时间】:2013-03-03 20:04:58
【问题描述】:

快速的问题,但我找不到任何解决方案。基本上,下面的程序假设将每个整数从 1 到 1000 平方。但是当我打印它时,它会切断。我只能打印 300 行,然后将其切断。对于此示例,如果 j

#include <stdio.h>
#include <math.h>

int main(void)
{
    int j;
    double k,sarr[1000];

    for (j=0; j<301; j++)
    {
        k = pow(j,2);
        sarr[j] = k;
        printf("\n%lf",sarr[j]);    
    }

    return(0);
}    

【问题讨论】:

  • 如何读取输出?您是否尽可能地在终端中向后滚动?你的终端是不是只有 300 行回滚?

标签: c arrays for-loop lines


【解决方案1】:

您的代码没有问题。我怀疑您的终端仅将程序输出的最后 300 行保留在其行缓冲区中。

尝试将输出重定向到文件(或从程序中将数字写入文件)。

【讨论】:

  • 是的,Windows 上的 cmd.exe 只显示最后几百行。查看调试日志时非常烦人。
【解决方案2】:

第一行应该是1 (= 2^0) 所以你的输出会被截断。

您可以将您的 for 循环更改为循环 i = 0, ..., 999 - for (j=0; j&lt;1001; j++) 并将输出重定向到一个文件,以便在您使用终端时查看整个输出。

运行:

./program > filename

为了将程序的输出重定向到一个名为filename 的文件,该文件将保存在您的当前目录中。此文件应包含所有打印的数字。

此外,不需要数组本身。只需使用double 类型的单个变量。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-18
    • 2012-08-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多