下面介绍几种常用的输入输出方法
因为ACM
新人对于ACM
题目中处理输入输出存在一些疑惑,于是在这里记录几种常用的输入输出方法。
知道输入数据组数n
int n;
scanf("%d",&n);
while(n--){
//这里处理每一组输入.然后直接按格式输出.
}
没有数据总数,以EOF结束
//C
int a;
while(scanf("%d",&a)!=EOF){
//处理每一组数据,并输出.
}
C++
int a;
while(cin>>a){
//处理每一组数据,并输出
}
以0或-1结束的输入
C
int n;
while(scanf("%d",&n), n!=0) {
}
C++
int n;
while(cin>>n && n!=0){
}
输入是一整行的字符串,即以换行符(enter)为输入结束标志
gets()函数不仅比scanf简洁,输入的字符串中有空格也可以直接输入,不用像scanf() 那样要定义多个字符数组。
C
char buf[20];
gets(buf);
C++
string buf;
getline(cin,buf);
char buf[255];
cin.getline(buf,255);