关于eof

今天首次注册了杭电的账号,转变一下自己的咸鱼生活。

找了最简单的一道题不出所料遇到了困难。内容如下:

Problem Description
Your task is to Calculate a + b.
Too easy?! Of course! I specially designed the problem for acm beginners. 
You must have found that some problems have the same titles with this one, yes, all these problems were designed for the same aim. 
 
Input
The input will consist of a series of pairs of integers a and b, separated by a space, one pair of integers per line. 
 
Output
For each pair of input integers a and b you should output the sum of a and b in one line, and with one line of output for each line in input. 
 
Sample Input
1 5
10 20
 
Sample Output
6
30

首先,我用自己的程序做题时wrong answer

#include<stdio.h>
int main() {
  int a, b ,sum ,i;
  for(i=0;i<2;i++){
    scanf("%d %d",&a,&b);
  printf("%d\n",a+b);
  } 
  return 0;

看似没问题,但是有个循环输入不符题意,所以:

[cpp]  view plain  copy
  1. #include <stdio.h>  
  2. int main()  
  3. {  
  4.     int a,b;  
  5.     while(scanf("%d%d",&a,&b)!=EOF)  
  6.     {  
  7.         printf("%d\n",a+b);  
  8.     }  
  9.     return 0;  
  10. }  

大神的结果是这样的。   EOF它的含义是end of file ,是判断你什么时候输完了以退出循环,一般是Ctrl+z +回车键,ctrl+Z的时候,进程会关闭标准输入,没有内容可以输入了,返回-1。也就是EOF,此时退出循环,






猜你喜欢

转载自blog.csdn.net/xizi_ghq/article/details/80481818
EOF