2019年全国高校程序设计挑战赛JAVA编程题3
2019年全国高校程序设计挑战赛JAVA编程题3
编程描述
对于给定的字符数组(字符数少于10000 ),统计其中字母类型、数字类型和符类型的字符出现次
数,其中字母类型是英文字母a-z之间的字符(不区分大小写);数字类型是0-9之间的字符;符号类型是除英文字母、数字及空格外的其它字符。
输入格式
一个字符序列
输出格式
分三行输出:
第一行字母类型,以a-z标识;
第二行数字类型,以0-9标识;
第三行字符号类型, 以others标识。
每行格式如下:
类别标识 出现次数(中间用一个空格分隔)
输入样例
输出样例
算法实现
代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
| import java.util.Scanner; public class Main { public static Scanner sc = new Scanner(System.in); public static void main(String[] args) { String input = sc.nextLine(); sc.close(); char[] chars = input.toCharArray(); int n = chars.length; int resutl1 = 0; int resutl2 = 0; int resutl3 = 0; for (int i = 0; i < n; i++) { char cc = chars[i]; int c = (int) cc; if ((c >= 48) & (c <= 57)) { resutl2++; } else { if (((c >= 97) & (c <= 122)) || ((c >= 65) & (c <= 90))) { resutl1++; } else { if (c != 32) { resutl3++; } } } } System.out.println("a-z " + resutl1); System.out.println("0-9 " + resutl2); System.out.println("others " + resutl3); } }
|