算法编程题:字符串的输入输出处理

题目描述

输入

第一行是一个正整数N,最大为100。之后是多行字符串(行数大于N), 每一行字符串可能含有空格,字符数不超过1000。

输出

先将输入中的前N行字符串(可能含有空格)原样输出,再将余下的字符串(不含有空格)以空格或回车分割依次按行输出。每行输出之间输出一个空行。

样例输入

2
www.dotcpp.com DOTCPP
A C M
D O T CPP

样例输出

www.dotcpp.com DOTCPP

A C M

D

O

T

CPP

编程代码如下:

解题思路: 其实这道题很简单的,只要对数据进行空格分割就可以了,空格分割split("\s+") 后面的+是多个空格的意思,注意,输出的格式,是每输出一行加一个空行。就可以了。 注意事项: 参考代码:

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

int n = sc.nextInt();

sc.nextLine();

int y = 0;

while(sc.hasNext()){

String str = sc.nextLine();

if(y<n){

System.out.println(str+" ");

y++;

}else{

String[] s = str.split("\s+");

for(int i=0;i<s.length;i++){

System.out.println(s[i]+" ");

}

}

}

}

经验分享 程序员 微信小程序 职场和发展