当前位置:首页 > C++知识 > 正文内容

信息学奥赛中文件流的写法

亿万年的星光4年前 (2021-04-03)C++知识1335




头文件

#include<cstdio>

也可以用万能头


格式如下:

int main(){
	freopen("xxxx.in","r",stdin);
	freopen("xxxx.out","w",stdout);	
	
	/*代码*/
	fclose(stdin);
	fclose(stdout);
	retrun 0; 
}



其中, r是read的缩写,w是write的缩写。

xxxx就是你要替换掉的内容,比如下面这道题。


可以看到一共四道题,每道题目都有一个英文名字。而且给出了输入文件名和输出文件名。

对于第一题成绩来说,我们的代码应该如下:

int main(){
	freopen("score.in","r",stdin);
	freopen("score.out","w",stdout);	
	
	/*你的代码*/
	fclose(stdin);
	fclose(stdout);
	retrun 0; 
}


对于第二题,应该 如下:

int main(){
	freopen("librarian.in","r",stdin);
	freopen("librarian.out","w",stdout);	
	
	/*你的代码*/
	fclose(stdin);
	fclose(stdout);
	retrun 0; 
}


需要注意的是,如果你写了文件流,去调试代码的时候,你是无法输入的。所以,我们在测试我们代码的时候会把文件流暂时注释掉,比如下面这样:

int main(){
	//freopen("score.in","r",stdin);
	//freopen("score.out","w",stdout);	
	
	/*你的代码*/
	//fclose(stdin);
	//fclose(stdout);
	retrun 0; 
}

等觉得程序没有问题了,可以提交了,就取消注释即可。

int main(){
	freopen("score.in","r",stdin);
	freopen("score.out","w",stdout);	
	
	/*你的代码*/
	fclose(stdin);
	fclose(stdout);
	retrun 0; 
}


扫描二维码推送至手机访问。

版权声明:本文由青少年编程知识记录发布,如需转载请注明出处。

标签: 文件流
分享给朋友:

相关文章

C++中的逻辑与运算

样例#include<iostream> using namespace std; int main(){ cout<<(1&1)...

如何估算时间复杂度

首先:  常见的算法时间复杂度由小到大依次为:Ο(1)<Ο(log2n)<Ο(n)<Ο(nlog2n)<Ο(n^2)<Ο(n^3)<…<Ο(2^n)<Ο(n!)时间复杂度可以简单理解为最多执...

【题解】最短路径问题

【题目描述】平面上有n个点(n≤100),每个点的坐标均在-10000~10000之间。其中的一些点之间有连线。若有连线,则表示可从一个点到达另一个点,即两点间有通路,通路的距离为两点间的直线距离。现...

【数论】快速乘

【数论】快速乘

上一篇文章简单说了龟速乘的问题,有人觉得龟速乘还是太慢了,有没有什么办法再快一点,实际是有的,就是我们今天介绍的 快速乘。快速乘的原理和龟速乘不同,快速乘并不是基于二进制和位运算,严格来说,快速乘是利...

树的存储结构

【方法1:数组】称为父亲表示法const int m=10;          ...

c++ 如何用链表存取数据

c++ 如何用链表存取数据

由于单链表的每个结点都有一个数据域和一个指针域。所以,每个结点可以定义成一个记录。其中,DATA数据元素,可以为你想要储存的任何数据格式,可以是数组,可以是int,甚至可以是结构体(这就是传说中的结构...