您的位置:首页 > 编程语言

8.在实际的开发工作中,对字符串的处理是最常见的编程任务。本题目即是要求程序对用户输入的串进行处理。具体规则如下:

2017-03-07 10:59 1056 查看
package s5;

import java.util.Scanner;

import java.io.*;

public class test8 {

    /*

     * 在实际的开发工作中,对字符串的处理是最常见的编程任务。本题目即是要求程序对用户输入的串进行处理。

     * 具体规则如下:

     * 1. 把每个单词的首字母变为大写。

     * 2. 把数字与字母之间用下划线字符(_)分开,使得更清晰 3. 把单词中间有多个空格的调整为1个空格。

     * 例如: 用户输入:

     * you and     me what  cpp2005program

     * 则程序输出:

     *  You And Me What Cpp_2005_program

     *  用户输入:

     *  this is     a      99cat

     *  则程序输出:

     *  This Is A 99_cat

     */

    public static void main(String[] args) throws IOException {

        // TODO Auto-generated method stub

        String s;

        /*Scanner input = new Scanner(System.in);

        s=input.next();*/

        BufferedReader stdin = new BufferedReader(new InputStreamReader(System.in));

        s=stdin.readLine();

        char []ch=s.toCharArray();

        String s2="";

        //System.out.println(ch.length);

        //System.out.println(s);

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

            if(i==0&&ch[i]>='a'&&ch[i]<='z'){

                s2=s2+(char)(ch[i]-32);

                continue;

            }

            

            if(ch[i]==' '&&ch[i-1]==' '){

                continue;

            }

            if(ch[i]>='a'&&ch[i]<='z'&&ch[i-1]==' '){

                s2=s2+(char)(ch[i]-32);

                continue;

            }

            if(ch[i]>='a'&&ch[i]<='z'&&ch[i-1]>='0'&&ch[i-1]<='9'){

                s2=s2+'_';

                s2=s2+(char)ch[i];

                continue;

            }

            if(ch[i]>='a'&&ch[i]<='z'&&ch[i+1]>='0'&&ch[i+1]<='9'){

                s2=s2+(char)ch[i];

                s2=s2+'_';

                continue;

            }

            s2=s2+(char)ch[i];            

        }

        System.out.println(s2);

        

        

    }

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐