C语言如何以相反顺序扫描整数文件?

时间:2018-12-04 16:33:18

标签: c while-loop printf scanf

我有一个包含数字的小文件,用新的行/空格分隔。 我正在寻找一种扫描文件的方法,但是相反。

Input: 1 2 3 4 5 1025
Output: 1025 5 4 3 2 1

注意!在以下代码中,我需要修改scanf。我需要保持printf不变!我不需要将1024转换为4201,整数保持不变。只有他们的订单会更改。

代码:

while (fscanf(input,"%d", &b) && !feof(input)) {printf("%d",b);}

1 个答案:

答案 0 :(得分:2)

您有足够大的堆栈吗?

void printreverse(FILE *f) {
    int n;
    if (fscanf(f, "%d", &n) != 1) return;
    printreverse(f); // recursive call
    printf("%d", n);
}

https://ideone.com/1jejpM