如何打印超过300行?

时间:2013-03-03 20:04:59

标签: c arrays for-loop lines

快速提问,但我找不到任何解决方案。基本上,下面的程序假设将每个整数从1-1000平方。但是当我打印它时,它会切断。我只能打印300行,然后将其剪掉。对于这个例子,代替第一行是1,如果它是j <301那么它是4,如果j <302那么它将是9。如何打印1000行是我的主要问题。

#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);
}    

2 个答案:

答案 0 :(得分:3)

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

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

答案 1 :(得分:1)

第一行应为1= 2^0),因此您的输出会被截断。

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

执行命令

./program > filename

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

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