zoukankan      html  css  js  c++  java
  • 【C语言】Oj题目常见问题-如何处理文件尾

    C语言Oj题目常见问题-处理文件尾

    样例

    刷oj的时候有时候会碰到如下的题目,明明写对了,但仍然过不了

    1003 - A + B Problem

    时间限制:1秒 内存限制:128兆

    • 题目描述

      计算 A + B.

    • 输入

      每行将包含两个整数AB。直到文件结尾。

    • 输出

      每一行输出A+B的值。

      样例输入

      1 1
      

      样例输出

      2
      

      提示

      简单加法,注意处理文件尾。

    关于处理文件尾

    该题过不了的原因可能就在于提示的文字:“注意处理文件尾”

    文件尾是什么可以简单的用字符串的末尾的''来类比。

    字符串在例遍的过程中需要标志来提示结束。

    文件在例遍的过程也要标志(文件尾)来提示结束。

    到oj里面意思其实是输入的样例不止一行,而有无数行,直到遇到文件尾就结束程序。

    解决方法

    就用while把主程序包围起来,一直输入一直运行
    直到遇到文件尾输入EOF就退出while循环结束程序。

    而普通程序运行一次a+b就退出。

    这个就能一直计算a+b。

    #include<stdio.h>
    
    int main(){
    	int a,b;
    	while(scanf("%d %d",&a,&b)!=EOF){    //输入循环
    		printf("%d + %d = %d
    ",a,b,a+b);//主程序
    	}
        //while(~scanf("%d %d",&a,&b))也可以
    	return 0;
    } 
    

    至于如何输入文件尾手动结束

    一般这是oj后台处理了,后台判断文件它本身就是文件格式,就和字符串不需要你说明它在哪停下一样

    类比while(str[i]!='')例遍如此。

    而手动停止呢则输入^Z即可。

  • 相关阅读:
    ajax参数解析
    利用HTML5新特性改变浏览器地址后不刷新页面
    JsDoc脚本注释文档生成
    sublime中配置Java 环境
    使用Node.js+Socket.IO搭建WebSocket实时应用【转载】
    js实现前端下载文件
    android JB3上怎样更改Camera拍照的quality
    关于_ENV(lua5.2 or later)
    hadoop-2.7.1安装笔记
    JavaScript的类及面向对象编程
  • 原文地址:https://www.cnblogs.com/404name/p/13748321.html
Copyright © 2011-2022 走看看