C++ 关于多点输入的问题

1015 Reversible Primes (20point(s)) PAT中涉及到了多点测试问题,这个需要注意一下,一直没怎么注意过;

主要的表示为结尾不同寻常,是以不寻常输入作为结尾标志的。

73 10
23 2
23 10
-2

 例如对上述输入,就不能按照格式按行读入,而是因该使用while判断是否到文件尾,从而判断是否为-2;其实个人感觉用普通的而不用EOF也可以;

while(scanf("%d",&n)!=EOF){
  if(n<0)
    break;
   scnaf("%d",&r);   
} 

  

补充说明一下,EOF本质上就是测试文件输入结尾,当读到结尾之后scanf返回值变为-1 和0,表示为bool中的false;

所以对于非定长用例输入极为有效。这个需要学习一下;

猜你喜欢

转载自www.cnblogs.com/songlinxuan/p/12264433.html