题目
Description
给定一段文章,请输出每个字母出现的次数
Input
只有一组输入数据,该数据大小<10KB。在文章中除最后一个字符外,只有小写字母、空格和换行符,没有另外的标点、数字和大写字母等。该文章以’#’结尾。
Output
输出格式为“C A”,C为’a’..’z’中的字母,A为出现次数,C和A之间空一格
Sample Input
here is the input
this is the article#
Sample Output
a 1
b 0
c 1
d 0
e 5
f 0
g 0
h 4
i 5
j 0
k 0
l 1
m 0
n 1
o 0
p 1
q 0
r 2
s 3
t 5
u 1
v 0
w 0
x 0
y 0
z 0
代码块
import java.util.Arrays;
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
Scanner cn = new Scanner(System.in);
String str;
int[] num = new int[];//定义26个字母的数组
Arrays.fill(num, );//将数组中的所有元素填充0
boolean flag = true;//树立一个旗杆
while (cn.hasNext()) {
if (flag)//判断旗杆
str = cn.nextLine();
else
break;
for (int i = ; i < str.length(); i++) {//进行字符串中的判断,并将对应的字母数组,加一
if (str.charAt(i) == '#')
flag = false;
for (int j = ,k=; j <= ; j++,k++) {
if (str.charAt(i) == j||str.charAt(i)==k)
num[j - ]++;
}
}
if (!flag)//进行flag判断,
break;
}
for (int i = ; i < ; i++) {//对应输出,数组中的数
System.out.println((char) (i + ) + " " + num[i]);
}
}
}