通用问题1
- 当不给定输入用例的个数时,应该怎样编写代码接收输入。
这个问题比较宽泛,由于这部分内容是结合各大oj来讲述,所以这里也用oj上常用的处理输入输出的EOF方式来实现。
C
#include<stdio.h>
int main(){
char str[20];
while (scanf("%s",str)!=EOF)
{
printf("%s",str);
}
return 0;
}
C++
C++也可以用C的scanf和printf,不过前文使用的是cin、cout这里继续沿用。
#include<iostream>
using namespace std;
int main(){
char str[20];
while(cin>>str){
cout<<str<<endl;
}
return 0;
}
Java
Java 这里可以用InputStream来作为Scanner的参数来提升读入的速度,不过这里沿用前文。
import java.util.Scanner;
public class shishiqiushi1{
public static void main(String args[]){
Scanner sc = new Scanner(System.in);
while(sc.hasNext()){
String str = sc.next();
System.out.println(str);
}
}
}
Python
while True:
try:
str1 = input()
print(str1)
except EOFError:
break
通用问题2
- 熟悉各个语言里的SCANF()和PRINT()即输入输出的函数的具体实现情况。
这属于查询相关语言提供的文档材料即可解决的问题,这里只给出对应的函数/库文件,而且在具体的语言中可能并不唯一对应。
- C -> stdio.h -> scanf()、printf()
- C++ -> iostream -> cin、cout
- Java -> Scanner -> System.in 、System.out
- Python -> Built-in Functions -> input()、print()