一、题目
题目描述
编写一函数,由实参传来一个字符串,统计此字符串中字母、数字、空格和其它字符的个数,在主函数中输入字符串以及输出上述结果。 只要结果,别输出什么提示信息。
输入格式
一行字符串
输出格式
统计数据,4个数字,空格分开。
样例输入
!@#$%^QWERT 1234567
样例输出
5 7 4 6
二、代码
package dotcpp3数组;
import java.util.Scanner;
public class G字符类型统计 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while(sc.hasNext()) {
String s = sc.nextLine();
char[] ss = s.toCharArray();
int a=0, b = 0, c = 0, d = 0;
for(int i = 0; i < ss.length; i++) {
if((ss[i]-0 >= 65 && ss[i]-0 <= 90)||(ss[i]-0 >= 97 && ss[i]-0 <= 122)) {
a++;
}else if(ss[i]-0 >= 48 && ss[i]-0 <= 57) {
b++;
}else if(ss[i]-0 == 32) {
c++;
}else {
d++;
}
}
System.out.print(a+" "+b+" "+c+" "+d);
}
}
}
ASCII码范围:
大写字母的范围65~90,小写字母范围是97~122,不能把字母的ASCII码值范围表示为65~122
空格的:32
数字的:48
标签:String,自定义,ss,编程,字符串,65,&&,sc,1035 From: https://blog.csdn.net/2301_76876837/article/details/137359394将字符串转化成字符数组:
String s = sc.nextLine();
char[] ss = s.toCharArray();