如输入:aiiioouuuu
输出结果为:e :0
a :1
o :2
i :3
u:4
Java中如何统计元音的个数并进行排序后输出(要求知道输出字母的顺序)
答案:3 悬赏:0 手机版
解决时间 2021-04-12 14:44
- 提问者网友:溺爱和你
- 2021-04-11 22:17
最佳答案
- 五星知识达人网友:傲气稳了全场
- 2021-04-11 23:18
public char[] total(String text,int[] count){
char[] letters=text.toCharArray();
count[0]=count[1]=count[2]=count[3]=count[4]=0;
for(char ch:letters){
switch(ch){
case 'a':count[0]++;break;
case 'e':count[1]++;break;
case 'i':count[2]++;break;
case 'o':count[3]++;break;
case 'u':count[4]++;break;
}
}
char[] sequence=new char[]{'a','e','i','o','u'};
for(int i=0;i<4;i++){
int m=i;
for(int j=i+1;j<=;j++){
if(count[m]>count[j]){
m=j;
}
}
if(m!=i){
count[m]^=count[i];
count[i]^=count[m];
count[m]^=count[i];
sequence[m]^=sequence[i];
sequence[i]^=sequence[m];
sequence[m]^=sequence[i];
}
}
return sequence;
}
向此函数传要处理的字符串,和统计个数的整数组。
返回字母次序,原个数数组次序也调整了。
char[] letters=text.toCharArray();
count[0]=count[1]=count[2]=count[3]=count[4]=0;
for(char ch:letters){
switch(ch){
case 'a':count[0]++;break;
case 'e':count[1]++;break;
case 'i':count[2]++;break;
case 'o':count[3]++;break;
case 'u':count[4]++;break;
}
}
char[] sequence=new char[]{'a','e','i','o','u'};
for(int i=0;i<4;i++){
int m=i;
for(int j=i+1;j<=;j++){
if(count[m]>count[j]){
m=j;
}
}
if(m!=i){
count[m]^=count[i];
count[i]^=count[m];
count[m]^=count[i];
sequence[m]^=sequence[i];
sequence[i]^=sequence[m];
sequence[m]^=sequence[i];
}
}
return sequence;
}
向此函数传要处理的字符串,和统计个数的整数组。
返回字母次序,原个数数组次序也调整了。
全部回答
- 1楼网友:逐風
- 2021-04-12 00:21
public
char[]
total(String
text,int[]
count){
char[]
letters=text.toCharArray();
count[0]=count[1]=count[2]=count[3]=count[4]=0;
for(char
ch:letters){
switch(ch){
case
'a':count[0]++;break;
case
'e':count[1]++;break;
case
'i':count[2]++;break;
case
'o':count[3]++;break;
case
'u':count[4]++;break;
}
}
char[]
sequence=new
char[]{'a','e','i','o','u'};
for(int
i=0;i<4;i++){
int
m=i;
for(int
j=i+1;j<=;j++){
if(count[m]>count[j]){
m=j;
}
}
if(m!=i){
count[m]^=count[i];
count[i]^=count[m];
count[m]^=count[i];
sequence[m]^=sequence[i];
sequence[i]^=sequence[m];
sequence[m]^=sequence[i];
}
}
return
sequence;
}
向此函数传要处理的字符串,和统计个数的整数组。
返回字母次序,原个数数组次序也调整了。
- 2楼网友:鸠书
- 2021-04-11 23:29
import java.util.scanner;
public class vowel {
public static void main(string[] args) {
// 统计输入的一行字符中a,e,i,o,u元音字母的个数
int ca = 0, ce = 0, ci = 0, co = 0, cu = 0;
scanner in = new scanner(system.in); // 创建一个与基本输入控制台system.in(键盘)相连的scanner输入对象in
string str = in.nextline();// 使用in.nextline()方法从控制台读取一行字符,存入str指定的空间。也即可以用str引用它
for (int i = 0; i < str.length(); i++) {
char c = str.charat(i); // 从0位开始,顺序读取字符串中的每一个字符给c
switch (c) { // 利用分支语语句,把每个字符跟a,e,i,o,u进行对应
case 'a':
case 'a': // 兼容大、小写
ca++;
break;
case 'e':
case 'e':
ce++;
break;
case 'i':
case 'i':
ci++;
break;
case 'o':
case 'o':
co++;
break;
case 'u':
case 'u':
cu++;
break;
}
}
// 把字符串的每个字符检查过后,输出每个元音字母出现的个数
system.out.println("a:" + ca);
system.out.println("e:" + ce);
system.out.println("i:" + ci);
system.out.println("o:" + co);
system.out.println("u:" + cu);
}
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯