2019年全国高校程序设计挑战赛JAVA编程题3

2019-11-21-2019年全国高校程序设计挑战赛JAVA编程题3

2019年全国高校程序设计挑战赛JAVA编程题3

2019年全国高校程序设计挑战赛JAVA编程题3

编程描述

对于给定的字符数组(字符数少于10000 ),统计其中字母类型、数字类型和符类型的字符出现次
数,其中字母类型是英文字母a-z之间的字符(不区分大小写);数字类型是0-9之间的字符;符号类型是除英文字母、数字及空格外的其它字符。

输入格式

一个字符序列

输出格式

分三行输出:
第一行字母类型,以a-z标识;
第二行数字类型,以0-9标识;
第三行字符号类型, 以others标识。
每行格式如下:
类别标识 出现次数(中间用一个空格分隔)

输入样例

1
Hello World!

输出样例

1
2
3
a-z 10
0-9 0
others1

算法实现

代码

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);
}
}
文章作者: HibisciDai
文章链接: http://hibiscidai.com/2019/11/21/2019-11-21-2019年全国高校程序设计挑战赛JAVA编程题3/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 HibisciDai