Stdin,stdout,stderr,如何让我的程序从文本文件中获取输入并输出到文本文件

时间:2014-03-02 17:27:37

标签: c file input output

在编程竞赛中,他们提到了这一点:

  

“如何回答问题?   在您要解决的问题中,您必须从 .IN 文件中读取数据,并将结果写入文件 OUT。

我习惯于常规的编程方式,在IDE中编写代码,编译,然后执行它以查看正在发生的事情,并且它有效,但是我的答案被拒绝了。

有没有人知道那些file.IN和.OUT的事情?

我的意思是,如何让我的程序从文本文件中获取输入,在该文件中我编写了我想要给程序的数据,并让它将输出发送到另一个文本文件?

感谢

1 个答案:

答案 0 :(得分:2)

在您的标头文件中加入stdio.h

在您的主要功能中,在顶部包含以下行。

freopen("input.in","r",stdin);
freopen("output.out","w",stdout);

在大多数在线编程比赛中,输入是通过stdin提供的,并通过stdout输出。但是,在这种情况下,您必须从文件(.in)读取输入并写入文件(.out)。 freopen将指定为第三个参数的流(stdin,stdout)重新打开流,而不是使用指定的文件。

编辑:示例代码从input.in获取输入并写入output.out。

#include <stdio.h>
int main(){
freopen("input.in","r",stdin);
freopen("output.out","w",stdout);
int n;
scanf("%d",&n);
printf("%d\n",n);
return 0;
}