本帖最后由 maxwell247 于 2015-9-28 00:22 编辑
从网上找到一份编程练习题,我决定将里面的题目全都做一遍。
/*
题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
*/
/*
分析:主要是Scanner和计数器的用法。
今天我才注意到Scanner原来还有个close方法。
这个程序应该不需要注释了。很容易看懂。
*/
import java.util.Scanner;
class TongJiZiFuGeShu {
public static void main(String[] args) {
System.out.println("请输入一行字符,本程序将统计英文字母、空格、数字和其它字符的个数");
Scanner sc=new Scanner(System.in);
String str=sc.nextLine();
sc.close();
if (str!=null){
char[] ch=str.toCharArray();
int countZiMu=0;
int countKongGe=0;
int countShuZi=0;
int countQiTa=0;
for (int i=0; i<ch.length; i++){
if ((ch>='A' && ch<='Z') || (ch>='a' && ch<='z')){
countZiMu++;
}else if(ch>='0' && ch<='9'){
countShuZi++;
}else if(ch==' '){
countKongGe++;
}else{
countQiTa++;
}
}
System.out.println("英文字母个数:"+countZiMu);
System.out.println("数字个数:"+countShuZi);
System.out.println("空格个数:"+countKongGe);
System.out.println("其他字符个数:"+countQiTa);
}else{
System.out.println("获取失败!");
}
}
}
/*
输出结果:
请输入一行字符,本程序将统计英文字母、空格、数字和其它字符的个数
Because of you, I never stray too far from the sidewalk. Because of you, I learned to play on the safe side so I don't get hurt.
Because of you...I miss you so much, can you hear me?
英文字母个数:135
数字个数:0
空格个数:37
其他字符个数:10
*/
|
|