zoukankan      html  css  js  c++  java
  • 文件输入输出

    文件输入输出的例子

    以输出任意一组数的最大最小值,平均值为例

    input:2 8 3 5 1 7 3 6

    output:1 8 4.375

    1重定向式

    如果有#define LOCAL的时候执行#ifdef LOCAL 和#endif之间的语句, 没有定义LOCAL的时候不执行;

    两个fopen加在main函数入口处,他将使得scanf从文件input.txt读入,printf写入文件output.txt

    #include <stdio.h>
    #define LOCAL int main() { #ifdef LOCAL freopen("input.txt", "r", stdin); freopen("output.txt", "w", stdout); #endif int x, cnt, mi, ma, s; scanf("%d", &x); s = x; mi = x; ma = x; cnt = 1; while(scanf("%d", &x) == 1) { s += x; if(x < mi) mi = x; if(x > ma) ma = x; cnt++; } printf("%d %d %.3f ", mi, ma, (double)s/cnt);//注意括号位置,如果“s / cnt”在括号里面输出结果是错的,是个整数,看清double在括号里面 return 0; }

     2如果题目中禁止用重定向式输入,那可以采用下面方法

    #include <stdio.h>
    int main()
    {
        FILE *fin, *fout;
        fin = fopen("data.in", "rb");
        fout = fopen("data.out", "wb");
        int x, cnt, mi, ma, s;
        fscanf(fin, "%d", &x);
        s = mi = ma = x;
        cnt = 1;
        while(fscanf(fin, "%d", &x) == 1)
        {
            s += x;
            if(x < mi) mi = x;
            if(x > ma) ma = x;
            cnt++;
        }
        fprintf(fout, "%d %d %.3f
    ", mi, ma, (double)s/cnt);
        fclose(fin);
        fclose(fout);
        return 0;
    }

     3 C++样例

    #include <fstream>
    using namespace std;
    ifstream fin("aplusb.in");
    ofstream fout("aplusb.out");
    int main()
    {
        int a, b;
        while(fin >> a >> b) fout << a + b << "
    ";
        return 0;
    }

    4.C++样例修改

    #include <fstream>
    #include <iostream>
    #define fin cin
    #define fout cout
    using namespace std;
    int main()
    {
        int a, b;
        while(fin >> a >> b) fout << a + b << "
    ";
        return 0;
    }
  • 相关阅读:
    Permission denied (publickey). SSH用户名密码登录报错
    git工作流(Gitflow/gitlab代码权限管理)
    Spring多数据源配置(2)[PageHelper插件下应用bug修复]
    Spring多数据源配置
    基于Redis实现分布式锁
    .NetCore Autofac依赖注入获取注册后的实例、全局容器获取
    C++注入记事本升级版,给记事本弄爱心
    C++注入记事本
    WINAPI实现简易扫雷游戏
    .net 公共基础类
  • 原文地址:https://www.cnblogs.com/rain-1/p/4779983.html
Copyright © 2011-2022 走看看