1. 掌握语言基础类库中System 、Math 、数据类型等类的使用。
2. 掌握字符串的使用。
1. 编写一个程序,接受用户输入的一段英文文字,统计出其中的字符个数、单词个数和句子的个数。(设句子以“。”“!”“?”结束,单词之间利用空格分隔)。
1. 在java中,System 、Math 、String、数据类型等类都在java.lang包中,系统将会自动引入。
2. String类的方法在书中71页的图2.6中给出。String是一个类类型,所以在比较两个String对象所包含的内容是否相等时,不能用==,要通过方法equals来实现。
—————————————————————————————————————————————————————————————————————————————
下面是我的代码
—————————————————————————————————————————————————————————————————————————————
貌似我写的代码不符合实验人的预期要求,我没有用equals啊,我用的是==,算了,做出来了就行,黑猫白猫,能捉老鼠就是好猫.
import java.util.*; public class shiyan4 { public static void main(String arg[]) { String str; int wordNum=0,sentNum=0; Scanner scan=new Scanner(System.in); System.out.println("Text to statistics"); str=scan.nextLine(); for(int i=0;i<str.length();i++) { char a=str.charAt(i); switch(a) { case '.': case '?': case '!': sentNum++; case ' ': wordNum++; break; default: break; } } System.out.println("word:"+wordNum+",sentence:"+sentNum); } }
只有空格只执行wordNum++;
到了大三考嵌入式的时候竟然又考了这个问题,狂汗啊,嵌入式没有讲程序语言竟然考试考一个读程序的题目(C语言的,最好自学点C):
int main() { int a=1,b=0; switch(a) { case 0: a++; case 1: a++; case 2: a++; b++; case 3: b++; } printf("a=%d,b=%d",a,b); }
问题就是请写出输出结果:
答案是:a=3,b=2
所以switch中的break不容小觑,大三了还给你来个4分的题目.