实验五 字符串和数组
【实验目的】
1. 掌握数组的声明、分配空间及初始化 2. 理解多维数组(重点掌握二维) 3. 掌握String类的特点及常用方法的使用 4. 掌握StringBuffer类的特点及常用方法的使用 5. 掌握String类和StringBuffer类的区别 6. 掌握equal方法与==的区别 【预习内容】
1. 复习课件中理论知识 2. 练习课堂所讲的例子 【实验内容及步骤】
1、请输入10个整数进行排序。
package com.shiyan5;
import java.util.Scanner; public class ShiYan1 { /**
* 1、请输入10个整数进行排序。 */
public static void main(String[] args) { // TODO Auto-generated method stub Scanner s= new Scanner(System.in); int[] a=new int[10];
System.out.println(\请输入10个整数\); for(int i=0;i<10;i++){ a[i]=s.nextInt(); }
System.out.print(\输入原序列为:\); for(int i=0;i<10;i++){
System.out.print(a[i]+\); }
for(int i=0;i<10;i++){
for(int j=i+1;j<10;j++){ if(a[i]>a[j]){ int t=a[i]; a[i]=a[j];
第 1 页 共 6 页
} }
a[j]=t; } } }
System.out.print(\排序后:\); for(int i=0;i<10;i++){
System.out.print(a[i]+\); }
2、定义一个10个元素组成的一维数组,输出该数组中的最大值、最小值、所有元素总和,以及最大值和最小值在该数组中的位置。
package com.shiyan5;
import java.util.Scanner; public class ShiYan2 { /**
* 定义一个10个元素组成的一维数组,输出该数组中的最大值、最小值、所有元素总和
* ,以及最大值和最小值在该数组中的位置。 */
public static void main(String[] args) { // TODO Auto-generated method stub Scanner s=new Scanner(System.in); int[] a=new int[10];
System.out.println(\请输入10个整数\); for(int i=0;i<10;i++){ a[i]=s.nextInt(); }
int max=a[0]; int min=a[0]; int maxwz=0; int minwz=0; int sum=0;
for(int j=0;j
if(a[j]>max){ max=a[j]; maxwz=j+1; }
if(a[j] } } } sum+=a[j]; } System.out.println(\最大值为:\+max); System.out.println(\最大值为第\+maxwz+\元素\); System.out.println(\最小值为:\+min); System.out.println(\最大值为第\+minwz+\元素\); System.out.println(\所有元素总和为:\+sum); 3、编写一个Java程序,完成以下功能: 1)声明一个名为name的String对象,内容是“My name is xxx”;(xxx为你的名字) 2)打印字符串的长度; 3)打印字符串的第一个字符; 4)打印字符串的最后一个字符; 5)打印字符串xxx的位置(从0开始编号的位置)。 package com.shiyan5; public class ShiYan3 { /** * 编写一个Java程序,完成以下功能: *1)声明一个名为name的String对象,内容是“My name is xxx”;(xxx为你的名字) *2)打印字符串的长度; *3)打印字符串的第一个字符; *4)打印字符串的最后一个字符; *5)打印字符串的第一个单词; *6)打印字符串xxx的位置(从0开始编号的位置)。 */ public static void main(String[] args) { // TODO Auto-generated method stub String name=\赵文昌\; System.out.println(\字符串的长度为:\+name.length()); System.out.println(\字符串的第一个字符为:\+name.charAt(0)); System.out.println(\字符串的最后一个字符为:\+name.charAt(name.length()-1)); System.out.println(\字符串赵文昌的位置为:\+name.indexOf(\赵文昌\)); } } 4、(1)输入一个5位数,判断它是不是回文,即,12321是回文,个位与万位相同,十位与千位相同。 package com.shiyan5; import java.util.Scanner; public class Shiyan4a { /** *输入一个5位数,判断它是不是回文,即,12321是回文,个位与万位相同,十位与千位相同。 */ public static void main(String[] args) { // TODO Auto-generated method stub Scanner s=new Scanner(System.in); int a; do{ System.out.print(\请输入一个5位正整数:\); a = s.nextInt(); }while(a<10000||a>99999); String ss=String.valueOf(a); char[] ch=ss.toCharArray(); if(ch[0]==ch[4]&&ch[1]==ch[3]){ System.out.println(\这是一个回文数。\); }else{ System.out.print(\这不是一个回文数。\); } } } (2)任意输入一个数,判断是不是回文。 package com.shiyan5; import java.util.Scanner; public class Shiyan4b { /** * 任意输入一个数,判断是不是回文。 */ public static void main(String[] args) { // TODO Auto-generated method stub Scanner s = new Scanner(System.in); boolean is=true; System.out.print(\请输入一个正整数:\); } } } long a=s.nextLong(); String ss=Long.toString(a); char[] ch=ss.toCharArray(); int j=ch.length; for(int i=0;i if(ch[i]!=ch[j-i-1]){is=false;} } if(is==true){ System.out.println(\这是一个回文。\); }else{System.out.println(\这不是一个回文。\); 5、请输入星期几的第一个字母来判断一下星期几,如果第一个字母一样,则继续判断第二个字母。 package com.shiyan5; import java.util.Scanner; public class Shiyan5 { /** * 请输入星期几的第一个字母来判断一下星期几,如果第一个字母一样,则继续判断第二个字母。 */ public static void main(String[] args) { // TODO Auto-generated method stub Scanner s=new Scanner(System.in); System.out.print(\请输入星期的第一个字母大写:\); String str=s.nextLine(); char ch=str.charAt(0); if(ch<'A'||ch>'Z'){ System.out.println(\输入错误,请重新输入\); }else { switch(ch){ case 'M': System.out.println(\星期一\);break; case 'W': System.out.println(\星期三\);break; case 'F': System.out.println(\星期五\);break; case 'T':{ System.out.println(\请输入第二个字母:\); String str1=s.nextLine(); char ch2=str1.charAt(0); if(ch2=='U'){System.out.println(\星期二\); }else if(ch2=='H'){System.out.println(\星期四\); } } } } else{ System.out.println(\无此写法!\); } };break; case 'S':{ System.out.println(\请输入第二个字母:\); String str3=s.nextLine(); char ch2=str3.charAt(0); if(ch2=='U'){System.out.println(\星期天\); }else if(ch2=='A'){System.out.println(\星期六\); } else{ System.out.println(\无此写法!\); } };break; default:System.out.println(\输入错误,请重新输入!\); }