2018/12/14.15.16作业
1.编写一个程序,实现从命令行参数输入两个字符串类型的数值,
并计算输出两个数值的和。 [必做题]
Scanner s = new Scanner(System.in);
String str = s.next();
String str2 = s.next();
int i = Integer.parseInt(str);
int n = Integer.parseInt(str2);
System.out.println("两数和为:"+(i+n));
2.编写一个程序,实现从命令行参数输入一字符串,统计该字符
串中字符“e”出现的次数。(识点:String中常用的方法)
Scanner s = new Scanner(System.in);
String str = s.nextLine();
int n = 0;
for(;;){
int i = str.indexOf('e');
if(i>=0){
str = str.substring(i+1);
n++;
}else{
break;
}
}
System.out.println(n);
3.生成十个0~100之间的随机数,放到数
组中,然后排序输出。(知识点:Math类取整,获得随机数等)
Random r = new Random();
int[] arr = new int[10];
for(int i = 0;i<10;i++){
arr[i]=r.nextInt(100);
}
Arrays.sort(arr);
System.out.println(Arrays.toString(arr));
4.分别在控制台输入字符串和子字符串,并计算字符串中子字符串出
现的次数。
Scanner s = new Scanner(System.in);
String str = s.nextLine();
String st = s.nextLine();
int n = 0;
for(;;){
int i = str.indexOf(st);
if(i>=0){
str = str.substring(i+1);
n++;
}else{
break;
}
}
System.out.println(n);
5.有一个字符串,其中包含中文字符、英
文字符和数字字符,请统计和打印出各个字符的个数。
String str = "ad1asf沙国际规范6353653建设的dasd高房价是";
int a = 0;
int b = 0;
int c=0;
for(int i = 0;i<str.length();i++){
int x = (int)str.charAt(i);
if(x>=48&&x<=57){
a++;
}else if((x>=65&&x<=90)||(x>=97&&x<=123)){
b++;
}else{
c++;
}
}
System.out.println("数字有:"+a+"个");
System.out.println("英文有:"+b+"个");
System.out.println("汉字有:"+c+"个");
- 有一种数叫回文数,正读和反读都一样,如12321便是一个回文数
。编写一个程序,从命令行得到一个整数,判断该数是不是回文数。
Scanner s = new Scanner(System.in);
long i = s.nextLong();
Long n =new Long(i);
String str = n.toString();
boolean b = true;
for(int x= 0;x<str.length();x++){
if(str.charAt(x)!=str.charAt(str.length()-x-1)){
b =false;
}
}
if(b){
System.out.println("是回文数");
}else{
System.out.println("不是回文");
}