华为机试练习题13—句子逆序

华为机试练习题13—句子逆序

题目描述

将一个英文语句以单词为单位逆序排放。例如“I am a boy”,逆序排放后为“boy a am I”
所有单词之间用一个空格隔开,语句中除了英文字母外,不再包含其他字符

输入描述:

将一个英文语句以单词为单位逆序排放。

输出描述

得到逆序的句子

例如:

输入:I am a boy
输出:boy a am I

代码(Java)

import java.util.Scanner;

public class 句子逆序 {
	public static String reverse(String str){
		int num=0;//存放空格数目
		for(int i=0;i<str.length();i++) {
			if(str.charAt(i)==' ') {
				num++;
			}
		}
		String[] s=new String[num];
		s=str.split(" ");//将字符串按空格分割成字符串数组;
		String str2="";
		for(int i=s.length-1;i>=0;i--) {//逆序
			str2=str2+s[i]+" ";
		}
		return str2;
	}

	public static void main(String[] args) {
		Scanner sca=new Scanner(System.in);
		while(sca.hasNext()) {
			String str=sca.nextLine();
			System.out.println(reverse(str));	
		}
	}
}

猜你喜欢

转载自blog.csdn.net/muxi_muxi/article/details/88963158