最近在做ACM练习题,一个程序需哟啊反复调试,而且每次调试都要重复的输入大量的数据,非常的麻烦,如果能够避免每次手动输入,而改为从文件输入那就方便多了,每次调试的时候都从指定的文件读取数据,而不用手动从控制台输入,freopen函数很好的实现了这一功能:
函数原型:
FILE * freopen ( const char * filename, const char * mode, FILE * stream );
【参数说明】
filename: 要打开的文件名
mode: 文件打开的模式,和fopen中的模式(r/w)相同
stream: 文件指针,通常使用标准流文件(stdin/stdout/stderr)
【使用方法】
因为文件指针使用的是标准流文件,因此我们可以不定义文件指针。
接下来我们使用freopen()函数以只读方式r(read)打开输入文件slyar.in
freopen("slyar.in", "r", stdin);
然后使用freopen()函数以写入方式w(write)打开输出文件slyar.out
freopen("slyar.out", "w", stdout);
接下来的事情就是使用freopen()函数的优点了,我们不再需要修改scanf和printf,而是维持代码的原样就可以了。因为freopen()函数重定向了标准流,使其指向前面指定的文件,省时省力啊,赞...
最后只要使用fclose关闭输入文件和输出文件即可。
fclose(stdin);fclose(stdout);
若要恢复句柄,可以重新打开标准控制台设备文件,只是这个设备文件的名字是与操作系统相关的。
freopen("CON", "r", stdin);
#include <stdio.h>
int main()
{
freopen("slyar.in", "r", stdin);
freopen("slyar.out", "w", stdout);
/* 中间按原样写代码,什么都不用修改 */
fclose(stdin);
fclose(stdout);
return 0;
}
分享到:
相关推荐
ACM输入输出规则是参与ACM国际大学生程序设计竞赛的关键技能之一,它确保参赛者能够准确无误地按照题目要求处理输入数据并输出结果,从而避免因格式错误而导致的Presentation Error(PE)。在ACM竞赛中,自动评测...
在ACM竞赛中,输入输出格式的规范是非常重要的,它直接影响到程序能否被正确地编译和运行。以下是一些常见的输入输出格式: 1. **单组输入/输出**:这是最简单的形式,通常只需要根据题目描述读取输入数据并计算...
ACM输入输出介绍
ACM各种练习题ACM各种练习题ACM各种练习题ACM各种练习题ACM各种练习题ACM各种练习题ACM各种练习题ACM各种练习题ACM各种练习题ACM各种练习题ACM各种练习题ACM各种练习题ACM各种练习题ACM各种练习题ACM各种练习题ACM...
3. 输入/输出处理:熟悉scanf和printf函数,以及文件输入输出操作,用于处理竞赛中的数据输入和结果输出。 4. 时间复杂度与空间复杂度:理解并优化代码的时间和空间效率,以满足ACM竞赛对解题速度的要求。 5. 动态...
本压缩包提供的"acm c程序练习"资源是一套针对C语言编程和算法实践的教程,特别适合那些准备参加ACM竞赛或希望提升C语言编程技能的学生。它包含了9个章节,每个章节都涵盖了13个C代码文件,这些文件分别代表了不同的...
### ACM基本输入输出知识点 #### 一、评测系统的反馈信息 在ACM国际大学生程序...通过以上内容的学习,我们可以更好地理解和掌握ACM竞赛中常见的输入输出处理方法,这对于提高编程能力和解决问题的能力都至关重要。
在ACM(国际大学生程序设计竞赛)中,输入输出是解决问题的基础步骤,本文将针对初学者,介绍如何处理各种类型的输入输出场景。 首先,输入是获取数据的关键。在ACM编程中,通常会遇到以下四种情况: 1. 只有一组...
ACM练习建议 ACM练习建议 ACM练习建议
标题中的"C语言ACM程序设计赶公交"是一个编程竞赛题目,源自ACM(国际大学生程序设计竞赛,简称ACM/ICPC)的风格。在ACM竞赛中,参赛者需要运用计算机科学的基本原理,尤其是算法和数据结构,来解决各种实际或理论...
### ACM 第01课-正确处理输入输出:深入解析与实战技巧 在计算机科学与编程领域,特别是参加ACM竞赛的选手们,掌握高效的输入输出技术是至关重要的。本课程旨在深入探讨输入输出的基本原理、常见类型以及如何优化...
10. 输入输出:输入输出是指在编程语言中读取输入数据和输出结果的方式,在本题目中,使用了scanf函数来读取输入数据,并使用printf函数来输出结果。 11. 编程语言:编程语言是指用于编写程序的语言,在本题目中,...
acm基本输入输出入门 ppt 各类的输入输出 分析
Java文件输入输出是Java编程中的基础且重要的一部分,它涵盖了数据在文件系统和程序之间的传输。这个主题包括了多种类和方法,使得开发者能够高效地处理文件内容。本文将深入探讨Java中的文件输入输出机制,以及如何...
如果需要读写文件,可以使用`freopen()`函数重定向输入输出流,例如,将输入从键盘重定向到名为"input.txt"的文件,输出到"output.txt"。 在ACM/ICPC竞赛中,程序通常接收来自键盘的输入并输出到屏幕,但实际评估时...
ACM输入输出介绍 参加编程大赛必备 必要的输入输出格式
在ACM(国际大学生程序设计竞赛)中,输入输出是解决问题的基础,对于初学者来说,理解各种输入输出格式和处理方法至关重要。以下是一些关于ACM输入输出的入门知识: 首先,ACM中的输入通常来自标准输入(stdin),...
在这个压缩包中,我们很可能会找到一系列C语言编写的程序实例,这些实例可能是为了帮助学生理解和实践ACM竞赛中常见的算法问题。 1. **C语言基础**: C语言的基础包括变量、数据类型、运算符、流程控制语句(如if-...
### ACM程序练习题知识点解析 #### 一、概述 ACM程序练习题主要涉及的是算法设计与分析领域的问题。这类题目通常来源于各种程序设计竞赛,比如ACM国际大学生程序设计竞赛等。通过解决这些题目,可以提升编程技能、...