亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在java中打印元音數量最多的單詞

在java中打印元音數量最多的單詞

素胚勾勒不出你 2023-06-28 15:22:21
我想打印包含最大元音數的單詞。但問題是包含最大數量的句子的最后一個單詞沒有打印。請幫我解決這個問題。我的代碼如下。當我輸入輸入時'Happy New Year',輸出是 'Yea'。但我想要輸出是'Year'import java.util.Scanner;public class Abcd {    public static void main(String args[]) {        Scanner sc = new Scanner(System.in);        System.out.print("Enter The Word : ");        String sentence = sc.nextLine();        String word = "";        String wordMostVowel = "";        int temp = 0;        int vowelCount = 0;        char ch;        for (int i = 0; i < sentence.length(); i++) {            ch = sentence.charAt(i);            if (ch != ' ' && i != (sentence.length() - 1)) {                word += ch;                  ch = Character.toLowerCase(ch);                if (ch == 'a' || ch == 'e' || ch == 'i' || ch == 'o' || ch == 'u') {                    vowelCount++;                 }            } else {                 if (vowelCount > temp) {                    temp = vowelCount;                    wordMostVowel = word;                }                word = "";                vowelCount = 0;            }            }        System.out.println("The word with the most vowels (" + temp + ") is: " + " " + wordMostVowel);    }}
查看完整描述

1 回答

?
慕田峪9158850

TA貢獻1794條經驗 獲得超7個贊

您可以在空格處剪切單詞(正確),但也可以在最后一個字符處剪切,即使它不是空格(因此永遠不會處理該字符)。這是不正確的。


這是一種可能性:


import java.util.Scanner;


public class Abcd {

    public static void main(String args[]) {

        Scanner sc = new Scanner(System.in);

        System.out.print("Enter the sentence : ");

        String sentence = sc.nextLine();

        String wordMostVowels = "";

        int maxVowelCount = 0;


        for (String word : sentence.split(" ")) {

            int vowelCount = 0;

            for (char c : word.toLowerCase().toCharArray()) {

                if (c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u') {

                    vowelCount++;

                }

            }


            if (vowelCount > maxVowelCount) {

                maxVowelCount = vowelCount;

                wordMostVowels = word;

            }

        }


        System.out.println("The word with the most vowels (" + maxVowelCount + ") is: " + wordMostVowels);

    }

}


查看完整回答
反對 回復 2023-06-28
  • 1 回答
  • 0 關注
  • 159 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號