资源描述
西 安 邮 电 大 学 (计算机学院)课内实验报告实验名称: 字符串与数组 专业名称: 计科班 级: 1202 学生姓名: 曹姣姣(24)学号(8位) 04121056指导教师: 张荣实验日期: 2014年10月16日 -2014年10月16日一. 实验目的1)掌握数组的声明、分配空间及初始化2)理解多维数组(重点掌握二维)3)掌握String类的特点及常用方法的使用4)掌握StringBuffer类的特点及常用方法的使用5)掌握String类和StringBuffer类的区别6)掌握equal方法与=的区别实验环境Eslipse+jdk6.0二. 实验内容1.编程完成一维数组的排序2.编程计算俩个矩阵相加和相乘3.编程统计一个字符串中给定字符出现的次数三方案设计1. 排序import java.util.Arrays;import java.util.Scanner;public class Sort public static void main(String args) Scanner s=new Scanner(System.in); int a=new int10; for(int i=0;i0;i-) for(int j=0;ji;j+) if(aiaj) int temp=ai; ai=aj; aj=temp; System.out.print(排序后的数组:”); for(int i:a) Syste m.out.print(i+t); 2. 俩个矩阵相加和相乘import java.util.*; public class JZ1 / 创建矩阵public static int createJuZhen(int x, int y) Scanner input = new Scanner(System.in); System.out.println(请输入 + x + 行 + y + 列的矩阵数据(行优先):); int array = new intxy; for (int i = 0; i array.length; i+) for (int j = 0; j arrayi.length; j+) arrayij = input.nextInt(); return array; / 矩阵输出 public static void outputJuZhen(int list) for (int i = 0; i list.length; i+) for (int j = 0; j listi.length; j+) System.out.print(listij + ); System.out.println(); / 矩阵求和 public static int addJuZhen(int list1, int list2) int list3 = new intlist1.lengthlist10.length; if (list1.length != list2.length | list10.length != list20.length) System.out.println(行数或列数不同的矩阵不能相加!并将返回0:!); else for (int i = 0; i list1.length; i+) for (int j = 0; j list10.length; j+) list3ij = list1ij + list2ij; return list3; / 矩阵相乘 public static int mulJuZhen(int list1, int list2) int list3 = new intlist1.lengthlist20.length; if (list1.length != list20.length | list10.length != list2.length) System.out.println(两矩阵不能符合条件相乘!并将返回0:!); else for (int i = 0; i list1.length; i+) for (int j = 0; j list20.length; j+) for (int k = 0; k list20.length; k+) list3ij += list1ik * list2kj; return list3; / 矩阵相减 public static int substractJuZhen(int list1, int list2) int list5 = new intlist1.lengthlist10.length; if (list1.length != list2.length | list10.length != list20.length) System.out.println(行数或列数不同的矩阵不能相加!并将返回0:!); else for (int i = 0; i list1.length; i+) for (int j = 0; j list10.length; j+) list5ij = list1ij - list2ij; return list5; / Main函数测试 public static void main(String args) Scanner input = new Scanner(System.in); System.out.println(请输入所要创建第一个矩阵的行数和列数(如:3 3):); int x = input.nextInt(); int y = input.nextInt(); int list1 = createJuZhen(x, y); / 创建矩阵1 System.out.println(请输入所要创建第2个矩阵的行数和列数(如:3 3):); x = input.nextInt(); y = input.nextInt(); int list2 = createJuZhen(x, y); / 创建矩阵2 int list3 = addJuZhen(list1, list2); / 矩阵相加 int list4 = mulJuZhen(list1, list2); / 矩阵相乘 int list5 = substractJuZhen(list1, list2); / 矩阵相减 / 输出结果 System.out.println(矩阵1为:); outputJuZhen(list1); System.out.println(矩阵2为:); outputJuZhen(list2); System.out.println(矩阵1与矩阵2相加为:); outputJuZhen(list3); System.out.println(矩阵1与矩阵2相减为:); outputJuZhen(list5); System.out.println(矩阵1与矩阵2相乘为:); outputJuZhen(list4); 3给定字符出现的次数.import java.util.*;public class Fre static String temp=abcaaceafa; public static int amount(String s,char c) int time=0; for(int i=0;is.length();i+) if(s.charAt(i)=c) time+; return time;public static void main(Stringargs)System.out.println(amount(temp,a);四测试数据及运行结果1 正常测试数据(3组)及运行结果;232非正常测试数据(2组)及运行结果。五总结1 实验过程中遇到的问题及解决办法;通过本次实验掌握数组的声明、分配空间及初始化;理解多维数组(重点掌握二维);掌握String类的特点及常用方法的使用;掌握StringBuffer类的特点及常用方法的使用;掌String类和StringBuffer类的区别;掌握equal方法与=的区别;但是本次练习中,我也出现了一些错误,是由于知识上的失误和不小心犯下的低级错误,但是我努力改正2对设计及调试过程的心得体会。 问题是在所难免的,在编写程序中,出现了很多问题,但经过一一调试和更改,编译成功通过,得到了正确的结果。编写程序不是一件一蹴而就的事情,一定要要有耐心,不要觉得枯燥,只要细心认真,一定会得到一个结果。
展开阅读全文