参考代码:
import java.util.Scanner; public class 统计字母个数 { public static void main(String[] args) { // 给定一段文章,请输出每个字母出现的次数 // 只有一组输入数据,该数据大小<10KB。在文章中除最后一个字符外,只有小写字母、空格和换行符, // 没有另外的标点、数字和大写字母等。该文章以’#’结尾。 Scanner sc = new Scanner(System.in); int[] arr = new int[26]; // 只有26个字母,所以定义一个长度为26的数组 While:while(sc.hasNext()) { // 给while命名 String str = sc.nextLine(); for (int i = 0; i < str.length(); i++) { if(str.charAt(i) == '#') { // 如果字符串中有#就结束while循环 break While; } if(str.charAt(i) >= 'a' && str.charAt(i) <= 'z') { // 判断是不是字母 arr[str.charAt(i)-'a']++; // 是字母就在数组对应的位置+1 // 比如这个字母是a,a-a就等于0,就在数组下标为0的位置+1 }else { continue; // 不是字母就跳过 } } } // 输出 for (int i = 0; i < arr.length; i++) { System.out.println((char)(i + 'a') + " " + arr[i]); // i 加上 a 就等于 a,b.....z(要转成字符型) // 比如i等于0时 i+'a'就等于a } } }
0.0分
4 人评分