• 【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即可。

  • 相关阅读:
    前后端分离方式渲染数据(2018/11/12)
    vue.js 2.0 --- 安装node环境,webpack和脚手架(入门篇)
    css 布局,过渡
    java.lang.InstantiationException: com.lch.commder.entity.Car 已解决
    [Err] 1146
    js简单图片切换
    HTML5布局篇
    IntelliJ IDEA(快捷键)
    hibernate检索策略
    hibernate(一对多关系)
  • 原文地址:https://www.cnblogs.com/404name/p/13748321.html
Copyright © 2020-2023  润新知