ACM竞赛题目的输入数据和输出数据一般有多组(不定),并且格式多种多样,所以,如何处理题目的输入输出是对大家的一项最基本的要求。
ACM的输入输出要求严格按照规定来。输入一般有以下三种形式:
参照poj 1000
一:不管你有多少组数据,直到读至输入文件末尾(EOF)为止。
C语言:
#include <stdio.h> int main() { int a, b; while(scanf("%d %d", &a, &b) != EOF) printf("%d\n", a + b); }C++:
#include<iostream> using namespace std; int main() { int a ,b; while(cin >> a >> b) cout << a + b << endl; return 0; }
二:测试N组数据。即输入需测试数据组数N,下面就含有N组数据。
C语言:
#include<stdio.h> int main() { int a ,b, n; scanf("%d", &n); while(n --) { scanf("%d %d", &a, &b); printf("%d\n", a + b); } return 0; }
C++:
#include<iostream> using namespace std; int main() { int a ,b, n; cin >> n while(n -- ) { cin >> a >> b; cout << a + b << endl; } return 0; }
C语言:
#include <stdio.h> int main() { int a, b; while( scanf("%d %d", &a, &b) && (a || b) ) printf("%d\n", a + b); }
#include<iostream> using namespace std; int main() { int a, b; while( cin >> a >> b && ( a || b ) ) cout << a + b << endl; return 0; }